Package: ziobro
Ziobro.pyPakiet zrobiony dla beki, nie ma na celu obrażać nikogo, jest tylko followupem do przeterminowanych już memów.Przykłady użyciaZakończenie pracy programuJak 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!fromziobro.exitimportziobrodefmain_program():try:...exceptExceptionase:...ziobro()ziobro()main_program()>>> Process finished with exit code 0StałaStał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)!fromziobro.constimportZIOBROdefshopping_cart_empty(cart):returnlen(cart)==ZIOBROprint(shopping_cart_empty([]))>>> 0FunkcjaProgramowanie 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.fromziobro.funcimportziobrovalues=['rozum','godność człowieka']print(list(map(ziobro,values)))>>> [0, 0]Obiekt/singletonMimo że obiekty i klasy to egzotyka, uznaliśmy, że należy jednak dać wam (programistom) coś ekstra. Przedstawiamy
uniwersalną klasęZiobrooraz towarzyszący jej singletonziobro, który pomoże efektywnie zarządzać pamięcią.fromziobro.objectimportZiobro,ziobroz=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
>>> TrueGotowy obiekt klasy może zostać zawołany, ma tez metodę kończącą program dla wygody.fromziobro.objectimportziobroziobro(12)ziobro.exit()Obiekty klasyZiobrozachowują się jak liczba (dokładniejint), co znaczy, że możemy używać tej klasy do wszelkich
skomplikowanych obliczeń.fromziobro.objectimportziobroprint((ziobro+ziobro)*ziobro-ziobro/(ziobro**ziobro))>>> 0.0WersjonowaniePakiet korzysta z autorskiej odmianywersjonowania semantycznegozaproponowanego przezLunder. 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:wersja0.0.00w standardzie semver oznacza wersję0.0.1wersja00.0.000oznacza1.0.2Jeś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 adresemziobver.org. Na ten moment trwają
prace nad opracowaniem pełnej dokumentacji zgodnej z najlepszymi światowymi standardami.Znane problemyna poważnieNie wszystkie funkcjonalności pakietu da się zaimportować bez kolizji nazw. Można poradzić sobie z tym problemem
poprzez aliasowanie.fromziobro.funcimportziobroasziobro_ffromziobro.exitimportziobroasziobro_eWersjonowanie 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.