Kott is an abstract data store, where you can store anything
and retrieve it easily. Our motto is One Kott fits all!
.
The whole idea is around the concept of a key-value store, but
has been abstracted to a level that can accept any form, model or
data. This means literally everything. Kott is singleton, so there
exists only a single instance of it.
>>> from kott import Kott
>>> id = Kott.set("my test data which is a string!")
>>> len(id)
32
>>> type(id)
<type 'str'>
>>> Kott.get(id)
'my test data which is a string!'
As you can see, there is almost no need for storing the keys or
saving them somewhere, because you can always find your data.
For example, you can store the instances of your classes in Kott
and later access them using their keys. The magic happens with
the concept and implementation of Kott plugins or KPlugs.
Everything beyond the concept of key-value store is written
as kplug. There are official (bundled) kplugs, such as KTag,
KTimerPool, KString, ... . Every kplug adds its own keywords
to the core of Kott. So, if you want to tag your data while
inserting it into Kott, you just use the keyword tag
as follows.
KPlugs are also singleton, and they have priorities while running,
so, a kplug with a lower value is executed before a kplug with a
higher value. To demonstrate the power and flexibility of Kott,
have a look at the example below. Official kplugs are called and
loaded by their name as string, but custom kplugs (written by users)
should be passed as instance.
>>> Kott.load_kplug("KTag") # True if loaded, False otherwise
True
>>> Kott.set(123, tag="my_numbers")
>>> Kott.set(456, tag="my_numbers")
>>> Kott.set(789, tag="my_numbers")
>>> ids = Kott.find(tag="my_numbers")
>>> for id in ids:
... Kott.get(id)
123
456
789
The find method looks for keywords in each kplug, and starts searching one by one to find the matching value, then it returns their IDs.
A sample kplug, KSample, is provided as an example for kplug developers.
©️ (c) 2016 by Hossein Ghannad, Sina Hatefmatbue, Mostafa Moradian :license: GPLv3, see LICENSE for more details.
k6 extension to load test Apache Kafka with support for various serialization formats, SASL, TLS, compression and beyond
FBL is tool to find broken links in articles and files
🎨 ASCII art library for Python
solve all cs Course for python
solve some fun problem in python
Coefficient of Variation (CV) and Coefficient of Quartile Variation (CQV) with Confidence Intervals (CI). Python port of https://github.com/MaaniBeigy/cvcqv)
This repository presents a full process of training a vehicle tracking model using `deep-person-reid` repository. Further, a complete web-application service based on FastAPI is provided that extracts features using YoloV5 and trained model.
A toolkit full of handy functions including most used models and utilities for deep-learning practitioners!