Skip to main content

An alternative to dictionaries, built on the argparse Namespace class.

Project description

Spacename

An alternative to dictionaries, built on the argparse Namespace class.

Table of contents

Back to Top

Table of contents

Installation

Usage

Installation

Currently, you are only able to install spacename using pip or similar package managers[^1]. However, this is set to change in the near future.

Using pip

To install this package using pip, simply run the following command:

*Nix

pip3 install spacename

Windows

pip install spacename

Usage

Creating a Namespace

from spacename import Namespace

ns = Namespace(key="val")
print(ns.key)

Output:

val

Adding/modifying keys and values to the Namespace

from spacename import Namespace

ns = Namespace(spam="fizz", bacon="buzz")
ns.spam = "foo" # Changing existing value
ns.eggs = "bar" # Creating a key-value pair
del ns.bacon # Deleting a key-value pair

print(ns)

Output:

Namespace(spam="foo", eggs="bar")

Converting to dict

from spacename import Namespace

ns = Namespace(spam="foo", eggs="bar", bacon="baz")

print(dict(ns))

# OR

print(ns.to_dict())

Output:

{'spam': 'foo', 'eggs': 'bar', 'bacon': 'baz'}

Converting to list

from spacename import Namespace

ns = Namespace(spam="foo", eggs="bar", bacon="baz")

print(list(ns))

Output:

[('spam', 'foo'), ('eggs', 'bar'), ('bacon', 'baz')]

Iterating through a Namespace

from spacename import Namespace

ns = Namespace(spam="foo", eggs="bar", bacon="baz")

for k, v in ns:
	print(f"{k}=\"{v}\"")

Output:

spam="foo"
eggs="bar"
bacon="baz"

Comparing Namespaces with other Namespaces

from spacename import Namespace

ns1 = Namespace(spam="foo", eggs="bar", bacon="baz")
ns2 = Namespace(foo="spam", bar="eggs", baz="bacon")

print(ns1 == ns2)

Output:

False

Checking that a Namespace contains a key

from spacename import Namespace

ns = Namespace(spam="foo", eggs="bar", bacon="baz")

print("spam" in ns)

Output:

True

[^1]: Supported package managers include, but are not limited to, pip, poetry, and any other package manager that supports the PyPI repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spacename-1.0.1.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

spacename-1.0.1-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file spacename-1.0.1.tar.gz.

File metadata

  • Download URL: spacename-1.0.1.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for spacename-1.0.1.tar.gz
Algorithm Hash digest
SHA256 0a7c61fd63fd8f55008f9e350bff05274556bce0a9164f0a64c8d14c86004c36
MD5 27e398279a481a85fdd759eb7f2369b3
BLAKE2b-256 a27b0fff1e3a430a4a146f4781680d381de4ef3eda6a29f5b82f6b344e563336

See more details on using hashes here.

File details

Details for the file spacename-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: spacename-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for spacename-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2a1d1c3c36ac71871bb815eec0d57f60b13e4258a05d44d0624f0f01da844b89
MD5 1a120fcfebdcafb5690ab290785e78d7
BLAKE2b-256 d51532c76690588a8147a1cb523408998f03803f76e34278cb7da110575dd0c4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page