==========
sqlitelist
==========
sqlitelist is a SQLite3 wrapper with a python list-like interface. It comes with one purpose - to keep your data if it bigger than your RAM size.
.. code-block:: python
>>> from sqlitelist import open
>>> with open('db') as lst:
... lst.append('hello')
... lst.extend(['world', {}])
>>> print(len(lst))
>>> for item in lst:
>>> print(item)
===================================
There is some performance features
===================================
.. code-block:: python
>>> from sqlitelist import open
>>> with open('db', journal_mode='MEMORY', autocommit=False) as lst:
... for _ in range(1000):
... lst.extend(['some', 'data', {'key': 'value', 'another key': 1}])
... lst.commit()
>>> # Do not forget to commit your changes if autocommit is off.
>>> lst.flush() # For flush all your data without removing a database file.
========
Features
========
Values can be any pickable objects.
Support for slices (step and negative indices aren't supported [yet])
.. code-block:: python
>>> with open('db') as lst:
... print(lst[1:200])
... print(lst[:50])
... print(lst[50:])
Support for getting items by it's index
.. code-block:: python
>>> with open('db') as lst:
... lst[5]
... lst[-3]
Support for pop, append and extend methods
.. code-block:: python
>>> with open('db') as lst:
... lst.pop()
... lst.pop(50) # Pop the element in the 51th place
Support for delete (indices and slices with no negative values)
.. code-block:: python
>>> with open('db') as lst:
... del lst[0]
... del lst[-50]
... del lst[:50]
... del lst[50:]
Support for iteration (no multithreading support!)
.. code-block:: python
>>> with open('db') as lst:
... for item in lst:
... print(item)
sqlitelist
==========
sqlitelist is a SQLite3 wrapper with a python list-like interface. It comes with one purpose - to keep your data if it bigger than your RAM size.
.. code-block:: python
>>> from sqlitelist import open
>>> with open('db') as lst:
... lst.append('hello')
... lst.extend(['world', {}])
>>> print(len(lst))
>>> for item in lst:
>>> print(item)
===================================
There is some performance features
===================================
.. code-block:: python
>>> from sqlitelist import open
>>> with open('db', journal_mode='MEMORY', autocommit=False) as lst:
... for _ in range(1000):
... lst.extend(['some', 'data', {'key': 'value', 'another key': 1}])
... lst.commit()
>>> # Do not forget to commit your changes if autocommit is off.
>>> lst.flush() # For flush all your data without removing a database file.
========
Features
========
Values can be any pickable objects.
Support for slices (step and negative indices aren't supported [yet])
.. code-block:: python
>>> with open('db') as lst:
... print(lst[1:200])
... print(lst[:50])
... print(lst[50:])
Support for getting items by it's index
.. code-block:: python
>>> with open('db') as lst:
... lst[5]
... lst[-3]
Support for pop, append and extend methods
.. code-block:: python
>>> with open('db') as lst:
... lst.pop()
... lst.pop(50) # Pop the element in the 51th place
Support for delete (indices and slices with no negative values)
.. code-block:: python
>>> with open('db') as lst:
... del lst[0]
... del lst[-50]
... del lst[:50]
... del lst[50:]
Support for iteration (no multithreading support!)
.. code-block:: python
>>> with open('db') as lst:
... for item in lst:
... print(item)
Metadata
Release files for sqlitelist 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sqlitelist-0.1.tar.gz | 4.2 kB | Details |
Release files / sqlitelist-0.1.tar.gz
| Download URL | sqlitelist-0.1.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc0091787bd2f872f1256d1084cefc82b35245c50255856d99e78c3cea205985
|
|
BLAKE2b-256 checksum How to use checksums |
831007b4b1a9a41349d7e187933512221d1d172c08f17bc3f3d176a3770ccae9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |