python - 使用 python 中的 range 选择一系列文件

标签 python iteration range

我想知道有没有办法使用 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/

相关文章:

javascript - HTML5 Range 功能在移动设备上损坏

python - 在不破坏管道的情况下与进程多次通信?

python - 运行时错误 : cuda runtime error (35) : CUDA driver version is insufficient for CUDA runtime version at torch/csrc/cuda/Module. cpp:51

python - 使用 python 从不同的点开始遍历文件和列表?

r - 如何在组内将第一个值与每个后续值进行比较,直到满足条件

python - 如何使用for循环向后打印字符串

python - Python 中的身份集?

python - pyspark 中检查多个表的情况

python - 可重用代码沿不同的数组维度进行迭代

jquery 验证规则和 autoNumeric 插件