Skip to content

gnifajio/synod

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

synod by

Gnifajio

Python словарь с синонимами

Описание

Python не поддерживает тип list как ключ словаря, а там более синонимы. Я решил эту проблему, создав собственный тип данных synod, позволяющий делать это. Ниже будет пример как это работает.

Установка

git clone https://github.com/gnifajio/synod.git
cd synod
python3 setup.py install

Или

pip install synod

Использование

from synod import Synod

synoded = Synod([
    [['development', 'dev'], [
        'all_inclusive', 'backend', 'frontend',
        'prototyping', 'android', 'desktop',
        '1c_dev', 'games', 'other', 'scripts',
        'voice_interfaces', 'ios', 'bots',
    ]],
    [['testing', 'tst'], [
        'sites', 'mobile', 'software',
    ]],
    [['admin', 'adm'], [
        'servers', 'network', 'databases',
        'security', 'other',
    ]]
]
)

synoded['dev'] == synoded['development']  # True
'dev' in synoded  # True
synoded.get('wtf')  # synod.EmptyValue
synoded.get('testing')  # [ 'sites', 'mobile', 'software' ]
synoded.has_key('tst')  # True
synoded.is_synonym('adm')  # True
synoded.get_main_key('adm')  # 'admin'
del synoded['dev']
synoded.has_key(dev)  # False
synoded.clear()
synoded  # {}

TODO

Добавить методы:

  • __ior__
  • __iter__
  • __len__
  • __or__
  • __reversed__
  • __ror__
  • __setitem__
  • copy
  • fromkeys
  • keys
  • pop
  • popitem
  • setdefault
  • update
  • values

Новое в версии 1.1:

  • Метод items.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages