Reading and writing Table objects¶
Astropy provides a unified interface for reading and writing data in different formats. For many common cases this will simplify the process of file I/O and reduce the need to master the separate details of all the I/O packages within Astropy. For details and examples of using this interface see the Unified file read/write interface section.
Table class includes two methods,
write(), that make it possible to read from
and write to files. A number of formats are automatically supported (see
Built-in table readers/writers) and new file formats and extensions can be
registered with the
Table class (see
I/O Registry (astropy.io.registry)).
>>> from astropy.table import Table >>> t = Table.read('photometry.dat', format='ascii.daophot')
It is possible to load tables directly from the Internet using URLs. For example,
download tables from Vizier catalogues in CDS format (
>>> t = Table.read("ftp://cdsarc.u-strasbg.fr/pub/cats/VII/253/snrs.dat", ... readme="ftp://cdsarc.u-strasbg.fr/pub/cats/VII/253/ReadMe", ... format="ascii.cds")
For certain file formats, the format can be automatically detected, for example from the filename extension:
>>> t = Table.read('table.tex')
Similarly, for writing, the format can be explicitly specified:
>>> t.write(filename, format='latex')
As for the
read() method, the format may
be automatically identified in some cases.
Any additional arguments specified will depend on the format. For examples of this see the
section Built-in table readers/writers. This section also provides the full list of
choices for the