, data_block=None)[source]

List the biological assemblies that are available for the structure in the given file.

This function receives the data from the pdbx_struct_assembly category in the file. Consequently, this category must be present in the file.


The file object.

data_blockstr, optional

The name of the data block. Defaults to the first (and most times only) data block of the file.

assembliesdict of str -> str

A dictionary that maps an assembly ID to a description of the corresponding assembly.


>>> import os.path
>>> file =, "1f2n.cif"))
>>> assembly_ids = list_assemblies(file)
>>> for key, val in assembly_ids.items():
...     print(f"'{key}' : '{val}'")
'1' : 'complete icosahedral assembly'
'2' : 'icosahedral asymmetric unit'
'3' : 'icosahedral pentamer'
'4' : 'icosahedral 23 hexamer'
'5' : 'icosahedral asymmetric unit, std point frame'
'6' : 'crystal asymmetric unit, crystal frame'