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", surname="Singh")

Or

from pydotmap import DotMap

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

How to use?

from pydotmap import DotMap
from pydotmap import OrderedDotMap


author = DotMap(name="Atul", surname="Singh", addr=["country": "India"])
print(author.name)
print(author.surname)
del author.surname
print(author.surname)
print(author.get("surname", "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", surname="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
from pydotmap import dotmap, ordered_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.2.tar.gz (3.0 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pydotmap-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 0c3629f4aceef09468c22e2b4ebc3ec2cb1436d7ffe62a40422ccdffc7a47886
MD5 45369653eb6044b6cdd76ae3c280d223
BLAKE2b-256 014cc67bfc6476bed19a1a3a3fd51eef329f9937d151895d14b9a2cea82710a8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pydotmap-0.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9d2565410103f240324b084f4498b0c79bf985bcc771b8858a3aa6dd92a5e843
MD5 69cf90230b31aaa4f12b286836a9ff8d
BLAKE2b-256 82ddb0841fb735d424948675e66ffdb1cf54d7c0b8f62f3a23a2084026f2fa05

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