Wpis z mikrobloga

Jak w szczerych, krótkich słowach działa moduł/paczka w #python ?

Bo robiłem coś z unitest, to mi ciągle nie znajdował czegoś, musiałem uprościć strukture katalogów. Dodałem _init_.py w katalogach, żeby Python rozumiał go jako moduł.

Ogólnie: gdzie mogę o tym poczytać?

#programowanie #programista15k
  • 5
  • Odpowiedz
@pyroxar: moduł to po prostu plik z kodem, pakiet do katalog z modułami.

Bo robiłem coś z unitest, to mi ciągle nie znajdował czegoś


@pyroxar: bo python ma to zrobione źle i trzeba nabrać intuicji, żeby odnaleźć się w tym bagnie
  • Odpowiedz
@pyroxar: proszę:
https://realpython.com/python-modules-packages/

ogólnie polecam stronkę.

Te moduły i paczki są głupio zrobione w pythonie i nieczęsto są z tym problemy.

Tak podsumowując:
- moduł to plik pythonowy lub katalog z plikiem _init_.py (paczka)
- masz zmienną środowiskową PYTHONPATH która mówi interpreterowi gdzie szukać modułów
- wszystkie pliki/katalogi z init, obok lub niżej twojego pliku wyjściowego są modułami
  • Odpowiedz
@pyroxar: jak masz taką strukturę jak:

-> app.py
-> unittest.py

To już się zaczyna robić bagno bo niewiadomo czy unittest ma sie odnosić do biblioteki czy do twojego pliku. To taki przykład niezwiązany z twoim problemem a ogólnie dlaczego ta koncepcja jest skopana. Dlatego wprowadzili relative importy żeby to rozwiązać ale to i tak jest wszystko nieintuicyjne.
  • Odpowiedz