Ziobro.py
Pakiet zrobiony dla beki, nie ma na celu obrażać nikogo, jest tylko followupem do przeterminowanych już memów.
Przykłady użycia
Zakończenie pracy programu
Jak wszyscy wiedzą, program musi się kiedyś kończyć, bo wszystko, co dobre kiedyś się kończy. Najlepiej jak kończy się dobrze, dlatego dzięki pakietowi Ziobro.py twoje programy będą zawsze kończyły się z sukcesem!
from ziobro.exit import ziobro
def main_program():
try:
...
except Exception as e:
...
ziobro()
ziobro()
main_program()
>>> Process finished with exit code 0
Stała
Stałe wartości są ważne w programowaniu. Jeśli coś jest stałe, to można na tym polegać, więc im więcej stałych, tym program działa stabilniej. Pakiet zawiera dodatkową stałą do użytku w twoich programach (sic! zupełnie za darmo)!
from ziobro.const import ZIOBRO
def shopping_cart_empty(cart):
return len(cart) == ZIOBRO
print(shopping_cart_empty([]))
>>> 0
Funkcja
Programowanie w Pythonie opiera się na funkcjach, bo można od razu uruchamiać funkcje, bez potrzeby tworzenia klas. Jak wiadomo, programiści preferują rozwiązania proste, więc w Pythonie klasy to rzadkość, funkcje to domena pięknego kodu. Do dyspozycji oddajemy dodatkową, uniwersalną funkcję, której można użyć, chociażby do mapowania. Program od razu staje się krótszy, czyli szybszy.
from ziobro.func import ziobro
values = ['rozum', 'godność człowieka']
print(list(map(ziobro, values)))
>>> [0, 0]
Obiekt/singleton
Mimo że obiekty i klasy to egzotyka, uznaliśmy, że należy jednak dać wam (programistom) coś ekstra. Przedstawiamy
uniwersalną klasę Ziobro oraz towarzyszący jej singleton ziobro, który pomoże efektywnie zarządzać pamięcią.
from ziobro.object import Ziobro, ziobro
z = Ziobro('człowiek', 'wilk', 'drugi wilk')
print(z == ziobro)
print(z == 0)
print(z == 0.0)
print(z < 0)
print(z > 0)
print(z == None)
>>> True
>>> True
>>> True
>>> False
>>> False
>>> True
Gotowy obiekt klasy może zostać zawołany, ma tez metodę kończącą program dla wygody.
from ziobro.object import ziobro
ziobro(12)
ziobro.exit()
Obiekty klasy Ziobro zachowują się jak liczba (dokładniej int), co znaczy, że możemy używać tej klasy do wszelkich
skomplikowanych obliczeń.
from ziobro.object import ziobro
print((ziobro + ziobro) * ziobro - ziobro / (ziobro ** ziobro))
>>> 0.0
Wersjonowanie
Pakiet korzysta z autorskiej odmiany wersjonowania semantycznego zaproponowanego przez Lunder. Zamiast używać cyfr, numer wersji jest determinowany przez ilość zer. Jest to o wiele prostsze rozwiązanie, szczególnie dla osób, które nie potrafią odczytywać liczb.
Przykłady:
- wersja
0.0.00w standardzie semver oznacza wersję0.0.1 - wersja
00.0.000oznacza1.0.2
Jeśli ten doświadczalny sposób wersjonowania sprawdzi się w praktyce (nie widzimy powodu, czemu miałby się nie sprawdzić), to pełna dokumentacja będzie dostępna pod adresem ziobver.org. Na ten moment trwają prace nad opracowaniem pełnej dokumentacji zgodnej z najlepszymi światowymi standardami.
Znane problemy
na poważnie
- Nie wszystkie funkcjonalności pakietu da się zaimportować bez kolizji nazw. Można poradzić sobie z tym problemem
poprzez aliasowanie.
from ziobro.func import ziobro as ziobro_f from ziobro.exit import ziobro as ziobro_e
- Wersjonowanie pakietu jest okrutne, prawdopodobnie żadne narzędzie do podbijania wersji zależności nie ogarnie. Tak samo, jak zestreleaser, którego używam do releasowania.
Release files for ziobro 0.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ziobro-0.0.0.tar.gz | 5.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ziobro-0.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.5 kB
Release files / ziobro-0.0.0.tar.gz
| Download URL | ziobro-0.0.0.tar.gz |
|---|---|
| Size | 5.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4e3beb24e8d9f987097837bf6d4e73b22a6659d3c94656961e774dcd7a0cfb6c
|
|
BLAKE2b-256 checksum How to use checksums |
70b07d38368353d0b8d93084a40bd6bc7fa9e97a8d1dd172a8b94953ad71cfc7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5
|
Release files / ziobro-0.0.0-py3-none-any.whl
| Download URL | ziobro-0.0.0-py3-none-any.whl |
|---|---|
| Size | 5.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7e0b65bcf0ef844557f226002457de8353ce6d1a00285c2908b0b356b0611bff
|
|
BLAKE2b-256 checksum How to use checksums |
d19564fe570ae74877e793fbc37834a4444a0505f7414ff606bd2dea9d1287b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5
|