fs.mode

Abstract I/O mode container.

Mode strings are used in in open and openbin.

class fs.mode.Mode(mode)[source]

An abstraction for I/O modes.

A mode object provides properties that can be used to interrogate the mode strings used when opening files.

Parameters:mode (str) – A mode string, as used by io.open.
Raises:ValueError – If the mode string is invalid.

Example

>>> mode = Mode('rb')
>>> mode.reading
True
>>> mode.writing
False
>>> mode.binary
True
>>> mode.text
False
__contains__(character)[source]

Check if a mode contains a given character.

appending

True if the mode permits appending.

Type:bool
binary

True if a mode specifies binary.

Type:bool
create

True if the mode would create a file.

Type:bool
exclusive

True if the mode require exclusive creation.

Type:bool
reading

True if the mode permits reading.

Type:bool
text

True if a mode specifies text.

Type:bool
to_platform()[source]

Get a mode string for the current platform.

Currently, this just removes the ‘x’ on PY2 because PY2 doesn’t support exclusive mode.

to_platform_bin()[source]

Get a binary mode string for the current platform.

Currently, this just removes the ‘x’ on PY2 because PY2 doesn’t support exclusive mode.

truncate

True if the mode would truncate an existing file.

Type:bool
updating

True if the mode permits both reading and writing.

Type:bool
validate(_valid_chars=frozenset({'+', 'x', 'w', 't', 'a', 'b', 'r'}))[source]

Validate the mode string.

Raises:ValueError – if the mode contains invalid chars.
validate_bin()[source]

Validate a mode for opening a binary file.

Raises:ValueError – if the mode contains invalid chars.
writing

True if the mode permits writing.

Type:bool
fs.mode.check_readable(mode)[source]

Check a mode string allows reading.

Parameters:mode (str) – A mode string, e.g. "rt"
Returns:True if the mode allows reading.
Return type:bool
fs.mode.check_writable(mode)[source]

Check a mode string allows writing.

Parameters:mode (str) – A mode string, e.g. "wt"
Returns:True if the mode allows writing.
Return type:bool
fs.mode.validate_openbin_mode(mode, _valid_chars=frozenset({'+', 'x', 'w', 'a', 'b', 'r'}))[source]

Check mode parameter of openbin is valid.

Parameters:mode (str) – Mode parameter.
Raises:ValueError if mode is not valid.