使用python中的range选择文件范围

2024-03-28 14:55:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道有没有一种方法可以使用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\u models目录中的蛋白质结构,如下所示:

  • Brn3a.B9999001
  • Brn3a.B9999002号公路
  • Brn3a.B9999003
  • 巴西比索3A.B9999004
  • 巴西比索3A.B9999005

可执行文件的输出如下所示

pdbnam_____E> Filename for PDB code not found: Brn3a.B9999000011.pdb
              Directories: ./Build_models

那么我如何设置范围来选择上面提到的列表呢?你知道吗


Tags: fromimportbuildenvreadverbosemodelscode
1条回答
网友
1楼 · 发布于 2024-03-28 14:55:48

你就快到了;你的格式应该是:

code = "Brn3a.B9999000%d.pdb" % i

你有太多的零和多余的1。你知道吗

您还需要记住,范围中的停止值是而不是包含的,因此要获得数字1-5,您需要将1添加到停止参数:

for i in range(1, 6):

相关问题 更多 >