【发布时间】:2018-01-08 08:39:08
【问题描述】:
基本上,我正在尝试编写一段代码,将带有文件的文本更改为文件本身的名称。基本上我有很多以EMBOSS_001 作为第一段文本的文件,例如(EMBOSS_001|296133516|ref|YP_003640763.1|,33.06,248,157,7,1,243,1,244,7e-31, 121)。我想将其更改为文件名。我的文件名范围从fp1_blast_output.csv 到fp11000_blast_output.csv。我想将文件中文本的EMBOSS 部分更改为文件的fp() 部分。这就是我所拥有的,但不幸的是它不起作用!
from glob import glob
fasta_files = glob('*output.csv')
print(fasta_files)
for fname in fasta_files:
with open(fname) as input1, open('modified/{}'.format(fname), 'w') as output:
data = input1.read()
data = data.replace('EMBOSS_001',fname.split('._blast_output.csv')[0])
output.write(data)
我最终想要的是:
fp()|296133516|ref|YP_003640763.1|,33.06,248,157,7,1,243,1,244,7e-31, 121
【问题讨论】:
-
运行这段代码会发生什么?
-
"我有很多文件以 EMBOSS_001 作为第一段文本,例如。(fp()|296133516|ref|YP_003640763.1|,33.06,248,157,7,1,243,1,244,7e -31, 121)。”这段文字没有 EMBOSS_001 作为第一段文字?
-
克里斯,因为我有大量文件,我正在使用 pubDB 的服务器上运行它。在输出和 EMBOSS 文本的更改未保存之前,一切似乎都正常工作!
-
Enfenion,抱歉,打错了!