Hi Dirk, cmd.iterate is actually the most efficient function to access atom properties. If you want a wrapper which directly gets b and q for one atom, it could look like this (returns a dictionary):
from pymol import cmd @cmd.extend def get_signle_atom_props(selection, props=['b', 'q'], quiet=1): if isinstance(props, basestring): props = cmd.safe_list_eval(props) expr = ','.join((repr(k) + ':' + k) for k in props) expr = '_r.update({' + expr + '})' r = {} n = cmd.iterate(selection, expr, space={'_r': r}) if n > 1: print ' Warning: selections spans more than one atom' if not int(quiet): print r return r You can use the "first" operator to limit your selection to one atom: print get_single_atom_props('first polymer') Cheers, Thomas On 27 Aug 2015, at 06:27, Dirk Kostrewa <kostr...@genzentrum.lmu.de> wrote: > Dear PyMOLers, > > I have trouble to find out, which command I could use in a python script > to get the b-factor and occupancy of a single atom. > In the script library, I only found examples getting b-factors iterating > over a selection. > Although, I could iterate over one atom, only, is there a more elegant > way of getting the b-factor and occupancy of a single atom? > > Best regards, > > Dirk. > > -- > > ******************************************************* > Dirk Kostrewa > Gene Center Munich, A5.07 > Department of Biochemistry > Ludwig-Maximilians-Universität München > Feodor-Lynen-Str. 25 > D-81377 Munich > Germany > Phone: +49-89-2180-76845 > Fax: +49-89-2180-76999 > E-mail: kostr...@genzentrum.lmu.de > WWW: www.genzentrum.lmu.de > ******************************************************* -- Thomas Holder PyMOL Principal Developer Schrödinger, Inc. ------------------------------------------------------------------------------ _______________________________________________ PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net) Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net