Выбор консервативных остатков в белке с помощью скрипта PyMol путем импорта списка остатков из текстового файла
Я хотел выбрать некоторые высококонсервативные остатки в белке (вычисленные с помощью механизма подсчета и перечисленные в текстовом файле - каждый остаток в одной строке), используя скрипт PyMol. Скрипт PyMol, который я использую ниже, не работает. Я буду очень благодарен вам, если кто-то может мне помочь.
Части скрипта прекрасно работают при отдельном запуске - скрипт Pymol, когда в скрипте упоминается номер остатка без импорта списка из текстового файла, и просто скрипт python для загрузки чисел из файла в массив также отлично работает при запуске по отдельности. Но проблема видна, когда он комбинируется, как в моем скрипте ниже - когда номер остатка нужно взять из массива, как я, после импорта списка из текстового файла. Любая помощь приветствуется. Спасибо!
#!/usr/bin/python
from pymol import cmd
import string
cmd.load("/home/xyz/proteinA.pdb", 'protein')
f=open('/home/xyz/residuedata.txt','r')
array = []
filecontents = f.read().split()
for val in filecontents:
array.append(int(val))
f.close()
for i in array:
cmd.select("residuedata", "resi i")
cmd.show('sphere', "residuedata")
cmd.color ('red', "residuedata")
1 ответ
"resi i"
Строка не знает о вашем i
переменная.
Ты намеревался сделать это?
for i in array:
cmd.select("residuedata", "resi {}".format(i))