From: Zhou, Y. <yin...@no...> - 2024-05-28 23:46:17
|
Hi, In the example code below, there is a selection object "myself" within PyMOL, I try to obtain the selected residues within Python. The "out=x.cmd.do" prints the selection to stdout, but the variable out remains None. What would be a good way to get the selection without going through disk I/O? import pymol2 x=pymol2.PyMOL() x.start() x.cmd.do("fetch 1crn; select mysel, /1crn//A/10-20") out=x.cmd.do("iterate mysel and name CA, (resi)") print(out) A separate question, when I run the following line of Python, I got an error (however the command works using PyMOL's command interface): out=x.cmd.do("iterate mysel and name CA, print(resi)") I got an error: return _cmd.alter(_self._COb, selection, expression, True, File "", line 1, in <module> NameError: name 'print' is not defined What's the syntax error in this line? Thank you, Yingyao |