Python Integration

From PyMOLWiki
Jump to navigation Jump to search

Launching Python programs from PyMOL

Running a Python script from PyMOL, usually the command:


Is enough. Of course, the file needs to be in the working directory. You can also launch Python scripts when starting PyMOL. Asynchronous means, that a new Python thread is started:

pymol     # synchronous, in PyMOL module
pymol -r  # synchronous in __main__ module
pymol -l  # asychronous in a new module

You can also launch python programs from within PyMOL with the commands:

run        # synchronous in pymol module
run,main   # synchronous in __main__ module

spawn        # asychronous in a new module
spawn,global # asychronous in the PyMOL module
spawn,main   # asychronous in the __main__ module

Launching PyMOL from Python programs

See Launching From a Script.

Using the PyMOL commandline

Are you aware that the PyMOL command line is also a Python command line? You can just use PyMOL interactively in that fashion.

PyMOL>from random import random

The only major difference is that the default namespace for PyMOL is "pymol" not "__main__"