小编cc2*_*211的帖子

Bash:重命名名称中间的多个文件的一小部分

我只想改变这个

cc211_AMBER_13062012i.II  cc211_GROMOS_13062012i.II
cc211_CHARM_13062012i.II  cc211_OPLS_13062012i.II
Run Code Online (Sandbox Code Playgroud)

cc211_AMBER_15062012i.II  cc211_GROMOS_15062012i.II
cc211_CHARM_15062012i.II  cc211_OPLS_15062012i.II
Run Code Online (Sandbox Code Playgroud)

我试过了,

find -name "*.13 *" | xargs rename ".13" ".15"
Run Code Online (Sandbox Code Playgroud)

3和第二个星号之间通常没有空间,这就是我所能看到的斜体.基本上有很多答案可以解释当它在文件名末尾时做什么,其中asterix似乎有效,但在这里我无法使其工作.

你得到的任何东西都会让我的生活变得更轻松!

编辑1:试用

-bash-4.1$ ls

cc211_AMBER_13062012.II  cc211_GROMOS_13062012.II
cc211_CHARM_13062012.II  cc211_OPLS_13062012.II

-bash-4.1$ rename 's/_13/_15/' cc*
-bash-4.1$ ls

cc211_AMBER_13062012.II  cc211_GROMOS_13062012.II
cc211_CHARM_13062012.II  cc211_OPLS_13062012.II 
Run Code Online (Sandbox Code Playgroud)

谢谢,

查理

bash

18
推荐指数
3
解决办法
2万
查看次数

Python:写入下一个空行

我正在尝试编写三次重复迭代的输出,每次打开和关闭outfile.计数器在迭代后得到重置和类似的东西,我是一个庞大的新手,并且很难用我编写的伪劣代码解决这个问题.因此,即使速度较慢,我也希望改变它的输出方式.

目前对于输出它只是在第一行重写,所以我只有程序的最后一次运行的输出.(tau,输出是代码中上面迭代中给定值的变量)

with open(fileName + '.autocorrelate', "w") as outfile:
    outfile.writelines('{0}     {1}{2}'.format(tau, output, '\n'))
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何快速方法让python在打开文件并在那里写新行时检查第一个空行?

python

4
推荐指数
1
解决办法
2330
查看次数

Bash中任何等效的*样式,用于处理不匹配相同模式的多个文件

我正在寻找在当前工作目录中的所有文件上迭代脚本而不迭代脚本(所以任何扩展.py).我当时正在使用它

for fileName in os.listdir('.'):
    if fileName != 'autocorrelation1.py':
        with open(fileName, "r") as input:

        REST OF SCRIPT HERE
Run Code Online (Sandbox Code Playgroud)

当我在文件夹中只有一个脚本autocorrelation.py时,哪个有效,但现在我有一些python脚本,我想知道是否有一个bash风格的等效*例如

for fileName in os.listdir('.'):
    if fileName != *'.py':
        with open(fileName, "r") as input:

        REST OF SCRIPT HERE
Run Code Online (Sandbox Code Playgroud)

我想我很懒,可以用另一行代码来做,但只是想知道是否有人知道更有趣的方式!

python

3
推荐指数
2
解决办法
168
查看次数

Biopython(或者只是Python):从使用gi标识符的大型.fasta文件中解析物种名称的最有效方法

我有一个大约145000个条目的.fasta文件(.txt),其格式如下

>gi|393182|gb|AAA40101.1| cytokine [Mus musculus]
MDAKVVAVLALVLAALCISDGKPVSLSYRCPCRFFESHIARANVKHLKILNTPNCALQIVARLKNNNRQV
CIDPKLKWIQEYLEKALNKRLKM

>gi|378792467|pdb|3UNH|Y Chain Y, Mouse 20s Immunoproteasome
TTTLAFKFQHGVIVAVDSRATAGSYISSLRMNKVIEINPYLLGTMSGCAADCQYWERLLAKECRLYYLRN
GERISVSAASKLLSNMMLQYRGMGLSMGSMICGWDKKGPGLYYVDDNGTRLSGQMFSTGSGNTYAYGVMD
SGYRQDLSPEEAYDLGRRAIAYATHRDNYSGGVVNMYHMKEDGWVKVESSDVSDLLYKYGEAAL

>gi|378792462|pdb|3UNH|T Chain T, Mouse 20s Immunoproteasome
MSSIGTGYDLSASTFSPDGRVFQVEYAMKAVENSSTAIGIRCKDGVVFGVEKLVLSKLYEEGSNKRLFNV
DRHVGMAVAGLLADARSLADIAREEASNFRSNFGYNIPLKHLADRVAMYVHAYTLYSAVRPFGCSFMLGS
YSANDGAQLYMIDPSGVSYGYWGCAIGKARQAAKTEIEKLQMKEMTCRDVVKEVAKIIYIVHDEVKDKAF
ELELSWVGELTKGRHEIVPKDIREEAEKYAKESLKEEDESDDDNM
Run Code Online (Sandbox Code Playgroud)
  1. 我有一个gi列表(在|之后列出的第一个数字).
  2. 对于给定的测试,该列表的大小在60-600gi之间变化
  3. 我想返回一个列表,其中包含各种gi的种类
  4. 物种名称通常在第一个例子中看到(由方括号[Mus musculus]包围)并不总是存在.
  5. 订单并不是特别重要.

我一直在使用各种BioPython解析碎片,但我认为由于搜索的大小而失败.我希望这里有人知道更有效的方式吗?

提前致谢!

python search large-data biopython

1
推荐指数
1
解决办法
925
查看次数

Python:非常基础,无法弄清楚为什么它不会分成更大的数字而是分成单个整数

这里真的很快问题,其他一些人帮助我解决了另一个问题,但我无法让他们的任何代码工作,因为我不明白这里有一些非常基本的东西.

8000.5   16745     0.1257
8001.0   16745     0.1242
8001.5   16745     0.1565
8002.0   16745     0.1595
8002.5   16745     0.1093
8003.0   16745     0.1644
Run Code Online (Sandbox Code Playgroud)

我有一个数据文件,当我输入

f1 = open(sys.argv[1], 'rt')
for line in f1:
    fields = line.split()
    print list(fields [0])
Run Code Online (Sandbox Code Playgroud)

我得到了输出

['1', '6', '8', '2', '5', '.', '5']
['1', '6', '8', '2', '6', '.', '0']
['1', '6', '8', '2', '6', '.', '5']
['1', '6', '8', '2', '7', '.', '0']
['1', '6', '8', '2', '7', '.', '5']
['1', '6', '8', '2', '8', '.', '0']
['1', '6', '8', …
Run Code Online (Sandbox Code Playgroud)

python

1
推荐指数
3
解决办法
151
查看次数

标签 统计

python ×4

bash ×1

biopython ×1

large-data ×1

search ×1