我正试图从PDB输入文件中提取NAD配体id的链式。我想按如下方式保存输出文件:如果输入文件是1AHI.pbd
,并且包含四个链A、B、C和D,那么输出应该是单独的文件
1AHI_A.txt
1AHI_B.txt
1AHI_C.txt
1AHI_D.txt
我下面的脚本没有给出预期的输出。可能是脚本中的某些逻辑问题。我也有任何错误。在
^{pr2}$示例:
输入文件:类似
HETATM15202 PA NAD A 501 44.008 102.331 5.491 1.00 11.48 P
HETATM15203 O1A NAD A 501 43.295 103.140 6.507 1.00 11.48 O
HETATM15204 O2A NAD A 501 42.939 101.407 4.919 1.00 11.48 O
HETATM15205 O5B NAD A 501 45.052 101.397 6.166 1.00 11.48 O
HETATM15247 PA NAD B 501 36.790 111.512 38.592 1.00 11.25 P
HETATM15248 O1A NAD B 501 37.248 110.563 37.565 1.00 11.25 O
HETATM15249 O2A NAD B 501 35.692 110.795 39.337 1.00 11.25 O
HETATM15250 O5B NAD B 501 36.174 112.802 37.915 1.00 11.25 O
HETATM15292 PA NAD C 501 100.016 130.669 21.776 1.00 12.28 P
HETATM15293 O1A NAD C 501 99.311 131.864 22.293 1.00 12.28 O
HETATM15294 O2A NAD C 501 101.501 131.009 21.932 1.00 12.28 O
HETATM15295 O5B NAD C 501 99.727 130.510 20.238 1.00 12.28 O
HETATM15337 PA NAD D 501 78.237 158.792 22.383 1.00 11.99 P
HETATM15338 O1A NAD D 501 79.297 157.907 21.808 1.00 11.99 O
HETATM15339 O2A NAD D 501 78.807 160.217 22.362 1.00 11.99 O
HETATM15340 O5B NAD D 501 78.069 158.416 23.905 1.00 11.99 O
预期输出:
1AHI_A.txt:链输出(输出文件)
HETATM15202 PA NAD A 501 44.008 102.331 5.491 1.00 11.48 P
HETATM15203 O1A NAD A 501 43.295 103.140 6.507 1.00 11.48 O
HETATM15204 O2A NAD A 501 42.939 101.407 4.919 1.00 11.48 O
HETATM15205 O5B NAD A 501 45.052 101.397 6.166 1.00 11.48 O
1AHI_B.txt:B链输出(输出文件)
HETATM15247 PA NAD B 501 36.790 111.512 38.592 1.00 11.25 P
HETATM15248 O1A NAD B 501 37.248 110.563 37.565 1.00 11.25 O
HETATM15249 O2A NAD B 501 35.692 110.795 39.337 1.00 11.25 O
HETATM15250 O5B NAD B 501 36.174 112.802 37.915 1.00 11.25 O
1AHI_C.txt:C链输出(输出文件)
HETATM15292 PA NAD C 501 100.016 130.669 21.776 1.00 12.28 P
HETATM15293 O1A NAD C 501 99.311 131.864 22.293 1.00 12.28 O
HETATM15294 O2A NAD C 501 101.501 131.009 21.932 1.00 12.28 O
HETATM15295 O5B NAD C 501 99.727 130.510 20.238 1.00 12.28 O
1AHI_D.txt:D链输出(输出文件)
HETATM15337 PA NAD D 501 78.237 158.792 22.383 1.00 11.99 P
HETATM15338 O1A NAD D 501 79.297 157.907 21.808 1.00 11.99 O
HETATM15339 O2A NAD D 501 78.807 160.217 22.362 1.00 11.99 O
HETATM15340 O5B NAD D 501 78.069 158.416 23.905 1.00 11.99 O
我希望这能帮助你理解。在
我想提取NAD(在输入文件的第三列)并用链式方式保存输出文件。在
下面是一些代码,它们将读取}的字母:
fileName
指定的PDB文件,并为找到的每个配体ID编写一个输出文件,其中包含输入文件中以HETATM
开头并包含NAD
的行和一个从A
到{如果要处理多个输入文件、陷阱错误等,则可以添加到该文件中。注意列表和集合理解的使用,它们通常是转换或过滤一组数据的非常简洁的方法。如果您需要这些构造的更多细节,请参阅Python帮助。在
我已经在Python3.5上测试过了,但是它应该可以在一些早期版本中使用——我认为在2.7中可以使用集合理解,但是我不确定
with
结构是什么时候引入的。如果它在您的版本中不起作用,只需像您在原始代码中那样打开这些文件(但不要忘记在以后close()
它们!)在相关问题 更多 >
编程相关推荐