pyctlib
Introduction
Package pyctlib is the fundamental package for project PyCTLib, a powerful toolkit for python development. This package provides basic functions for fast python v3.6+ programming. It provides easy communication with the inputs and outputs for the operating systems. It provides quick try-catch function touch, useful types like vector, timing tools like timethis and scope as long as manipulation of file path, reading & writing of text/binary files and command line tools.
Installation
This package can be installed by pip install pyctlib or moving the source code to the directory of python libraries (the source code can be downloaded on github or PyPI).
pip install pyctlib
Basic Types
vector
vector is an improved implement of list for python. In addition to original function for list, it has the following advanced usage:
In [1]: from pyctlib.basictype import vector
In [2]: a = vector([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
In [3]: a.map(lambda x: x * 2)
Out[3]: [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
In [4]: a.filter(lambda x: x % 2 == 0)
Out[4]: [2, 4, 6, 8, 10]
In [5]: a.all(lambda x: x > 1)
Out[5]: False
In [6]: a.any(lambda x: x == 2)
Out[6]: True
In [7]: a[a > 7] = 7
In [8]: a
Out[8]: [1, 2, 3, 4, 5, 6, 7, 7, 7, 7]
In [9]: a.reduce(lambda x, y: x + y)
Out[9]: 49
In [10]: a.index(lambda x: x % 4 == 0)
Out[10]: 3
File Management
Timing Tools
scope
>>> from pyctlib import scope, jump
>>> with scope("name1"):
... print("timed1")
...
timed1
[name1 takes 0.000048s]
>>> with scope("name2"), jump:
... print("timed2")
...
>>>
timethis
>>> from pyctlib import timethis
>>> @timethis
... def func(): print('timed')
...
>>> func()
timed
[func takes 0.000050s]
Touch function
>>> from pyctlib import touch
>>> touch(lambda: 1/0, 'error')
'error'
>>> touch('a')
>>> a = 4
>>> touch('a')
4
Acknowledgment
@Yiteng Zhang, Yuncheng Zhou: Developers
Metadata
Release files for zytlib 0.3.350
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| zytlib-0.3.350-py3-none-any.whl | Python 3 | none | any | Details |
Release files / zytlib-0.3.350-py3-none-any.whl
| Download URL | zytlib-0.3.350-py3-none-any.whl |
|---|---|
| Size | 75.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fcfc263c965e5039eec4502e1a0bd7973282c6904e05735c502af96c90fc95ff
|
|
BLAKE2b-256 checksum How to use checksums |
9830700901abb424f018d0c0bf2f03f37293b8aa32c6f16899cf14494b674e96
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.12
|