Making Python even more convenient by extending list and dict and pathlib and more.
Project description
Welcome to alexlib
This package extends many native Python classes to equip you with an uneasy to tame power. Beside many minor extensions, the major classes extended are:
-
list
is extended toList
- Forget that for loops exist in your life, because with this class, for loops are implicitly applied to all items.
-
dict
is extended toStrcut
.- Combines the power of dot notation like classes and key access like dictionaries.
-
pathlib
is extended toP
P
objects are increbily powerful for parsing paths, no more than one line of code is required to do any operation.
* Some other classes that make honorable mention here are `Read` and `Save` classes. Together with `P`, they provide comprehensible support for file management. Life cannot get easier with those.
Furthermore, those classes are inextericably connected. Example, globbing a path P
object returns a List
object and so on.
You can read the details in the code to grapple the motivation and the philosophy behind its implementation mechanics. Fill your life with one-liners, take your code to artistic level of brevity and readability while simulataneously being more productive.
Install
just do this in your command line
pip install alexlib
Getting Started
That's as easy as taking candy from a baby; whenever you start a Python file, preface it with this
import alexlib.toolbox as tb
This unleashes the library.
A Taste of Power
Suppose you want to know how many lines of code in your repository. The procedure is to glob all .py
files recursively, read string code, split it by lines, count the the lines, add up everything.
To achieve this, all you need is a imminently readable one-liner.
tb.P.cwd().myglob("*.py, r=True).read_text().split('\n').apply(len).np.sum()
How does this make perfect sense?
myglob
returnsList
ofP
path objectsread_text
is aP
method, but it is being run agaistList
object. Behind the scense responsible black magic fails to find such a method inList
and realizes it is a method of items inside the list, so it reads all files and containerize them in anotherList
object and return it.- Similar story applies to the next methods.
.np
convertsList
tonumpy
array, then.sum
is a method ofnumpy
, which gives the final result.
This is the power of implicit for loops. Share with us your one-liner snippets to add it to use-cases of this package.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.