Shortcuts

ride.utils.io

Module Contents

Classes

NpJsonEncoder

Extensible JSON <http://json.org> encoder for Python data structures.

Functions

is_nonempty_file(→ bool)

bump_version(→ pathlib.Path)

Bumps the version number for a path if it already exists

load_structured_data(path)

dump_yaml(path, data)

load_yaml(→ Any)

dump_json(path, data)

load_json(→ Any)

float_representer(dumper, value)

tensor_representer(dumper, data)

ride.utils.io.is_nonempty_file(path: Union[str, pathlib.Path]) bool[source]
ride.utils.io.bump_version(path: Union[str, pathlib.Path]) pathlib.Path[source]

Bumps the version number for a path if it already exists

Example:

bump_version("folder/new_file.json") == Path("folder/new_file.json)
bump_version("folder/old_file.json") == Path("folder/old_file_1.json)
bump_version("folder/old_file_1.json") == Path("folder/old_file_2.json)
ride.utils.io.load_structured_data(path: pathlib.Path)[source]
ride.utils.io.dump_yaml(path: pathlib.Path, data: Any)[source]
ride.utils.io.load_yaml(path: pathlib.Path) Any[source]
ride.utils.io.dump_json(path: pathlib.Path, data: Any)[source]
ride.utils.io.load_json(path: pathlib.Path) Any[source]
class ride.utils.io.NpJsonEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]

Bases: json.JSONEncoder

Extensible JSON <http://json.org> encoder for Python data structures.

Supports the following objects and types by default:

Python

JSON

dict

object

list, tuple

array

str

string

int, float

number

True

true

False

false

None

null

To extend this to recognize other objects, subclass and implement a .default() method with another method that returns a serializable object for o if possible, otherwise it should call the superclass implementation (to raise TypeError).

default(obj)[source]

Implement this method in a subclass such that it returns a serializable object for o, or calls the base implementation (to raise a TypeError).

For example, to support arbitrary iterators, you could implement default like this:

def default(self, o):
    try:
        iterable = iter(o)
    except TypeError:
        pass
    else:
        return list(iterable)
    # Let the base class default method raise the TypeError
    return JSONEncoder.default(self, o)
ride.utils.io.float_representer(dumper: yaml.Dumper, value: float)[source]
ride.utils.io.tensor_representer(dumper: yaml.Dumper, data: torch.Tensor)[source]
Read the Docs v: latest
Versions
latest
stable
Downloads
pdf
html
epub
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.