sisl.io.Sile

class sisl.io.Sile(filename, *args, **kwargs)

Bases: Info, BaseSile

Base class for ASCII files

All ASCII files that needs to be added to the global lookup table can with benefit inherit this class.

By subclassing a Sile one can manually specify the buffer class used when passing a buffer_cls keyword argument. This enables one to overwrite buffer classes for custom siles.

>>> class mySile(otherSislSile, buffer_cls=myBufferClass): ...

Methods

base_directory([relative_to])

Retrieve the base directory of the file, relative to the path relative_to

close()

dir_file([filename, filename_base])

File of the current Sile

read(*args, **kwargs)

Generic read method which should be overloaded in child-classes

write(*args, **kwargs)

Generic write method which should be overloaded in child-classes

base_file

File of the current Sile

file

File of the current Sile

__init__(filename, mode='r', *args, **kwargs)[source]

Just to pass away the args and kwargs

base_directory(relative_to='.')

Retrieve the base directory of the file, relative to the path relative_to

property base_file

File of the current Sile

close()[source]
dir_file(filename=None, filename_base='')

File of the current Sile

property file

File of the current Sile

read(*args, **kwargs)

Generic read method which should be overloaded in child-classes

Parameters:

kwargs – keyword arguments will try and search for the attribute read_<> and call it with the remaining **kwargs as arguments.

write(*args, **kwargs)

Generic write method which should be overloaded in child-classes

Parameters:

**kwargs – keyword arguments will try and search for the attribute write_ and call it with the remaining **kwargs as arguments.