我想知道有没有办法使用 python range 命令选择一系列文件,实际上我正在运行 modeler 9.11 进行蛋白质同源建模?
这是Python脚本:
from modeller import *
from modeller.scripts import complete_pdb
log.verbose() # request verbose output
env = environ()
env.io.atom_files_directory = './Build_models'
env.libs.topology.read(file='$(LIB)/top_heav.lib') # read topology
env.libs.parameters.read(file='$(LIB)/par.lib') # read parameters
for i in range(1, 5):
# read model file
code = "Brn3a.B99990000%00d1.pdb" % i
mdl = complete_pdb(env, code)
s = selection(mdl)
s.assess_dope(output='ENERGY_PROFILE NO_REPORT', file='Brn3aloop.profile',
normalize_profile=True, smoothing_window=15)
我想读取一组保存在 Build_models 目录中的名为如下的蛋白质结构:
- Brn3a.B99990001
- Brn3a.B99990002
- Brn3a.B99990003
- Brn3a.B99990004
- Brn3a.B99990005
可执行文件的输出如下所示
pdbnam_____E> Filename for PDB code not found: Brn3a.B9999000011.pdb
Directories: ./Build_models
那么我如何设置范围来选择上面提到的列表?
最佳答案
你就快到了;你的格式应该是:
code = "Brn3a.B9999000%d.pdb" % i
你有太多的零和多余的1
。
您还需要记住,范围内的停止值不包含在内,因此要获取数字 1 - 5,您需要向停止参数添加 1:
for i in range(1, 6):
关于python - 使用 python 中的 range 选择一系列文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15735694/