• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Python moduł nie chce się zaimportować

+1 głos
496 wizyt
pytanie zadane 11 stycznia 2025 w Python przez Iei Bywalec (2,220 p.)
edycja 11 stycznia 2025 przez Iei

Witam

Zainstalowałem z powodzeniem moduł validators, jednak podczas jego instalacji był jakiś komunikat z pytaniem, czy utworzyć środowisko wirtualne, bo inaczej może wystąpić niezgodność. Niestety nie zrobiłem print screena tego, więc nie pamiętam co dokładnie było napisane. Wybrałem, że tak. Teraz w VSC utworzyły mi się dwa, powiedzmy, katalogi z nazwami .venv i .vscode, których wcześniej nie było. Gdy w pliku próbuję importować validators, po najechaniu na nazwę modułu pojawia się okienko z informacjami Brak dostępu do "validators" oraz Nie można rozpoznać importu "validators". Co mogę zrobić, aby to skutecznie zaimportować oraz o co chodzi z tym środowiskiem wirtualnym?

 

import validators

 

1 odpowiedź

+3 głosów
odpowiedź 11 stycznia 2025 przez mokrowski Mędrzec (158,960 p.)
wybrane 11 stycznia 2025 przez Iei
 
Najlepsza
Środowisko wirtualne języka Python, to katalog w którym umieszczone są skrypty oraz moduły. Aby to środowisko aktywować, uruchamiasz skrypt który znajduje się w katalogu bin środowiska wirtualnego. Dla MS Windows, to będzie plik z końcówką *.ps1 (PowerShell) lub *.bat (CMD). Po jego uruchomieniu, ustawia on szereg zmiennych środowiskowych które powodują, że moduły oraz sam język nie instaluje oprogramowania w systemie, tylko w katalogu środowiska wirtualnego. Tu masz dobry opis zagadnienia: https://python.land/virtual-environments/virtualenv

W Twoim przypadku, to środowisko wirtualne, powstało w katalogu .venv

Jak je aktywujesz (z konsoli lub z VSC), to możesz robić importy a narzędziem pip , instalować nowe moduły "nie brudząc systemu".
komentarz 11 stycznia 2025 przez Iei Bywalec (2,220 p.)
Dziękuje za odpowiedź, a czy to jest ogólnie dobry pomysł żeby tworzyć takie środowisko wirtualne, czy lepiej byłoby jakbym wybrał, żeby go nie tworzyć?
1
komentarz 11 stycznia 2025 przez mokrowski Mędrzec (158,960 p.)
Wiesz, dzięki temu masz elastyczność. Możesz instalować moduły jakie sobie chcesz, nie destabilizujesz samego języka, możesz dobrać wersje tych modułów, zapisać "receptę" na instalacje dokładnie tych wersji jakich używałeś w aplikacji, mieć wiele środowisk które będziesz aktywował i de-aktywował. Moim zdaniem więcej zalet niż wad. Z wad? No chyba może tylko bardziej złożona konfiguracja.

Przeczytaj z uwagą link który wysłałem. Myślę że wiele wyjaśni.
komentarz 11 stycznia 2025 przez adrian17 Mentor (355,180 p.)
Na dłuższą metę każdy używa virtualenva, bo chcesz żeby środowiska dla różnych projektów były osobne. To jest analogiczne do np folderu .node_modules per projekt w JSie (tylko mniej automatyczne).

Natomiast jak używasz IDE jak pycharm, to one zazwyczaj zarządzają tym za Ciebie; zgaduję że plugin pythonowy do VSC też to umie robić?

Podobne pytania

0 głosów
1 odpowiedź 369 wizyt
pytanie zadane 31 marca 2025 w Python przez Iei Bywalec (2,220 p.)
+1 głos
0 odpowiedzi 397 wizyt
0 głosów
1 odpowiedź 885 wizyt
pytanie zadane 4 listopada 2020 w Python przez Jaksa1703 Nowicjusz (200 p.)

93,736 zapytań

142,672 odpowiedzi

323,294 komentarzy

63,298 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...