Dear Christian,
Summary:
From within the same PyMOL instance, the command
pdb 1n1m
works, but the script
> from pymol import cmd
> time.sleep(1)
>
> list = ('1n1m')
>
> for strc in list:
> pdb strc
does not.
(IMO, the import is not necessary here).
Analysis:
You use the code above as a PyMOL .pml script. Thus, PyMOL will interpret each
command primarily as a PyMOL command. If no matching command is found, the
Python things will be tried.
Translation:
PyMOL probably thinks that 'strc' is the PDB-code rather than the variable. It
tries to download 'pdbstrc.ent' from the PDB server.
Question:
Does a script just containing
'pdb 1n1m' work? I guess yes.
Solution - Go Python:
script.py
-----------------------
from pymol import cmd
time.sleep(1)
list = ('1n1m')
for strc in list:
cmd.do('pdb %s'%(strc))
------------------------
start it with:
run script.py
I hope that helps,
Kristian