# Loop Pymol command get_area

I want to select multiple residues from different PDB files loaded on the same pymol session.

select resi LIG
get_area sele


How do I loop the above command to enable the command below:

select ligands,resn LIG


Example 1: Print the names of all the selected objects

You’ve selected several objects in PyMOL, and you want to see their names. By default, a new selection object called “(sele)” is created. We can create a Python variable called seleobjs, say, and then loop over them:

seleobjs = cmd.get_object_list('(sele)')
for obj in seleobjs: print obj


Example 2: Disable all the selected objects

If you still have your selection, “(sele)”, you can disable them (effectively turn them off on the right-hand sidebar):

seleobjs = cmd.get_object_list('(sele)')
for obj in seleobjs: cmd.disable(obj)


Example 3: Delete all the selected objects

You’re done with the objects in your selection, “(sele)”: you might be able to delete them using “delete ”, but if you can’t write a wildcard that covers all the names of the objects, you can iterate over a selection and delete them:

seleobjs = cmd.get_object_list('(sele)')
for obj in seleobjs: cmd.delete(obj)


get_area calculates the surface area in square Angstroms of the selection given. Note that the accessibility is assessed in the context of the object(s) that the selection is part of. So, to get the surface areas of e.g. a component of a complex, you should make a new object containing a copy of just that component and calculate its area.

please let us know if it worked

• Thanks, this code is working, but I am still not able to calculate the area of selected residues. My main hurdle is how to use the get_area pymol command and incorporate in the loop. Dec 15 '20 at 22:50
• @shome edited my answer Dec 16 '20 at 13:50
• I typed : seleobjs = cmd.get_object_list('(sele)') for obj in seleobjs: get_area obj It is showing me invalid syntax.. Dec 16 '20 at 14:00
• cmd.get_area(str selection="(all)", int state=1, int load_b=0) try with Parentheses (Round Berackets) Dec 16 '20 at 14:24
• showing invalid syntax Dec 16 '20 at 15:10