对于使用"setup.py"构建安装包的开发人员而言,这应该是一个非常常见的问题,应该先问过它,但我无法在任何地方找到合适的答案.
在setup.py中
from distutils.core import setup
setup(
....,
....,
data_files=[('MyApp/CBV', ['myapp/data/CBV/training.cbv', 'myapp/data/CBV/test.cbv'])],
....,
....,
)
Run Code Online (Sandbox Code Playgroud)
sudo python setup.py安装的结果
running install
running build
running build_py
running build_scripts
running install_lib
running install_scripts
changing mode of /usr/local/bin/MyApp_trainer to 755
changing mode of /usr/local/bin/MyApp_reference_updater to 755
changing mode of /usr/local/bin/MyApp_predictor to 755
changing mode of /usr/local/bin/reference_updater to 755
running install_data
creating /usr/local/MyApp/CBV
copying MyApp/data/CBV/training.cbv -> /usr/local/MyApp/CBV
copying MyApp/data/CBV/test.cbv -> /usr/local/MyApp/CBV
running install_egg_info
Removing /usr/local/lib/python2.7/dist-packages/MyApp-0.1.0.egg-info
Writing /usr/local/lib/python2.7/dist-packages/MyApp-0.1.0.egg-info
Run Code Online (Sandbox Code Playgroud)
从使用上述结果的观察,"/ usr/local"是"data_files"根目录.除了硬编码,是否有任何Python函数可以给我这个"data_files"根目录?
我在Ubuntu上写了一些Perl库(.pm)和Perlscripts(.pl),我需要将它们分发给我办公室的同事.这些脚本和库需要第三方库.我想让它变得非常简单.
关于我的信息.
如果我有这个matlab功能
function [result] = matlab_test(param1, param2)
disp(sprintf('param1 : %s', param1));
disp(sprintf('param2 : %s', param2));
result = 'hello matlab';
Run Code Online (Sandbox Code Playgroud)
我想在bash脚本中调用这个matlab函数
matlab -nodesktop -nosplash -nodisplay -r "try, A=matlab_test('test','matlab'); end; quit"
echo $A
Run Code Online (Sandbox Code Playgroud)
我想要这个输出
test
matlab
hello matlab
Run Code Online (Sandbox Code Playgroud)
我的要求是找到是否可以在我的bash脚本中使用Matlab的返回值,并将其传递给管道.我只想将我的应用程序分成小组件(文件)并通过管道/参数进行通信.简而言之,我想看看我可以在我的bash脚本中包装Matlab脚本的程度,以便我可以设置我的代码架构.
如果我不能这样做,我只需将我需要返回值的部分从matlab捆绑到matlab脚本中.
我尝试对已经对齐的序列进行评分.让我们说吧
seq1 = 'PAVKDLGAEG-ASDKGT--SHVVY----------TI-QLASTFE'
seq2 = 'PAVEDLGATG-ANDKGT--LYNIYARNTEGHPRSTV-QLGSTFE'
Run Code Online (Sandbox Code Playgroud)
给定参数
substitution matrix : blosum62
gap open penalty : -5
gap extension penalty : -1
Run Code Online (Sandbox Code Playgroud)
我确实浏览了biopython cookbook,但我能得到的是替换矩阵blogsum62,但我觉得必须有人已经实现了这种类型的库.
那么有人可以建议任何可以解决我的问题的库或最短的代码吗?
Thx提前
我想做同样的事情
my @nucleotides = ('A', 'C', 'G', 'T');
foreach (@nucleotides) {
print $_;
}
Run Code Online (Sandbox Code Playgroud)
但使用
use constant NUCLEOTIDES => ['A', 'C', 'G', 'T'];
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点 ?
我有matlab文件matlab_param.m
function matlab_param(param1, param2)
disp(sprintf('param1 : %s', param1));
disp(sprintf('param2 : %s', param2));
Run Code Online (Sandbox Code Playgroud)
我希望bash脚本bash_param.sh看起来像
#!/bin/bash
echo $1
echo $2
./matlab_param.m $1 $2
Run Code Online (Sandbox Code Playgroud)
我想运行这个bashscirpt
./bash_param.sh hello world
Run Code Online (Sandbox Code Playgroud)
它会打印出来
hello
world
param1 : hello
param2 : world
Run Code Online (Sandbox Code Playgroud)
我用谷歌搜索了几个小时,找不到任何确切的解决方案.我到目前为止最接近的是
matlab -nodesktop -nosplash -nodisplay -r "try, run ('./test_param.m'); end; quit"
Run Code Online (Sandbox Code Playgroud)
我需要硬编码所有参数.
我想做同样的事情
open MYFILE, ">", "data.txt";
print MYFILE "Bob\n";
Run Code Online (Sandbox Code Playgroud)
而是在类变量中
sub _init_tmp_db
{
my ($self) = @_;
open $$self{tmp_db_fh}, ">", "data.txt";
print $$self{tmp_db_fh} "Bob\n";
}
Run Code Online (Sandbox Code Playgroud)
它给了我这个错误:'字符串找到了运营商预期的附近"Bob \n"'
我该怎么办?
这是输入矩阵
7 9 6
8 7 9
7 6 7
Run Code Online (Sandbox Code Playgroud)
基于它们在矩阵中出现的频率(注意:这些值是出于解释目的.我没有提前预先计算它们.这就是为什么我问这个问题)
number frequency
6 2
7 4
8 1
9 2
Run Code Online (Sandbox Code Playgroud)
和我期望的输出
4 2 2
1 4 2
4 2 4
Run Code Online (Sandbox Code Playgroud)
有一个简单的方法吗?
我想编写一个bash脚本,可以处理类似于许多内置bash命令的参数和输入.例如,像sort一样,它可以处理
sort -k 1 -r input.txt
sort input.txt -k 1 -r
cat input.txt | sort -k 1 -r
sort -k 1 -r < input.txt
sort -k 1 -r <(cat input.txt)
Run Code Online (Sandbox Code Playgroud)
我希望我的脚本能够以类似的方式处理参数和输入
myscript.sh -i 3 -b 4 input.txt
myscript.sh input.txt -i 3 -b 4
cat input.txt | myscript.sh -i 3 -b 4
myscript.sh -i 3 -b 4 < input.txt
myscript.sh -i 3 -b 4 <(cat input.txt)
Run Code Online (Sandbox Code Playgroud)
到目前为止,我只使用了"read"和"getopts"中的一些功能,并认为如果我自己尝试这样做可能会出错.
为了让我更清楚地说明我的问题,请输入input.text的内容
aaa
bbb
ccc
Run Code Online (Sandbox Code Playgroud)
我想使用参数i和b中的值来做一些事情,但我只是在这个例子中打印出来.我想要的样本输出是
i : 3
b : 4
aaa
bbb
ccc …Run Code Online (Sandbox Code Playgroud)