Skip to main content

Dot notation python dicationary

Project description

pydotmap

built with Python3

This package is just a wrapper to python standard library dict and OrderedDict from pythoncollections library with support of pickling and unpickling. It will also make you able to use decorator that will save your time to convert dict definition param to pydotmap. It will allow you to use python dict or dictionary as dot notation just like javascript object.

How to initialize?

author = DotMap(name="Atul", sirname="Singh")

Or

from pydotmap import DotMap

author = DotMap()
author.name = "Atul"
author.sirname = "Singh"

How to use?

from pydotmap import DotMap
from pydotmap import OrderedDotMap
from pydotmap import dotmap, ordered_dotmap


author = DotMap(name="Atul", sirname="Singh", addr=["country": "India"])
print(author.name)
print(author.sirname)
del author.sirname
print(author.sirname)
print(author.get("sirname", "singh"))  # you can use your default value same as dict
print(author.addr[0].country)


# Ordered Map - This will maintain the order of your dictionary

author = OrderedDotMap(name="atul", sirname="singh", addr=[{"country": "India"}])
print(author)

You can pickle it also. How?

from pydotmap import DotMap
import pickle

author = DotMap(name="Atul")

print(pickle.dumps(author))

OUTPUT

b'\x80\x04\x952\x00\x00\x00\x00\x00\x00\x00\x8c\x0epydotmap.pymap\x94\x8c\x06DotMap\x94\x93\x94)\x81\x94\x8c\x04name\x94\x8c\x04Atul\x94sh\x03b.'

you can use OrderedDotMap same way as DotMap to create pickle dump

How to use pydotmap decorator?

from pydotmap import dotmap

value = {"author": "atul"}


@dotmap
def check_dotmap_decorator(in_value):
    return in_value.author

print(check_dotmap_decorator(value))


@ordered_dotmap
def check_orderedmap_decorator(in_value):
    return in_value.author

print(check_orderedmap_decorator(value))

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

pydotmap-0.1.0.tar.gz (3.0 kB view details)

Uploaded Source

Built Distribution

pydotmap-0.1.0-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file pydotmap-0.1.0.tar.gz.

File metadata

  • Download URL: pydotmap-0.1.0.tar.gz
  • Upload date:
  • Size: 3.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.8.8

File hashes

Hashes for pydotmap-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1e87d824a19e1278afc29277fa9a23256205f1f68ec7fe6a473e90452c5c53d1
MD5 82aea0e41ff9754ecaa0b34b06234dbb
BLAKE2b-256 fcbc715ff88f8d3169685314d9af8517eb8f700dcd77a4e1eebe6887fdccfb71

See more details on using hashes here.

File details

Details for the file pydotmap-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pydotmap-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.8.8

File hashes

Hashes for pydotmap-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f58550e68b62dbee60c3d1342b4d4d4543f2bfa610e49d94ab1baeee01282470
MD5 8d1e679046061ef7e49aed0d4e5acc51
BLAKE2b-256 67491ae723b9582d92f891325b52a431d0bf9d9b5fce6eddae7ddfd4dbf5ed13

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