Jak importować moduły do ​​pycharm?

200

W PyCharm dodałem środowisko Python /usr/bin/python. Jednak,

from gnuradio import gr

kończy się niepowodzeniem jako niezdefiniowane odwołanie . Działa to jednak poprawnie w interpretatorze Pythona z wiersza poleceń.

GNURadio działa dobrze z Pythonem poza Pycharmem. Wszystko jest instalowane i konfigurowane tak, jak tego chcę.

Gnuradio znajduje się na /usr/local/lib/python2.7/site-packages/gnuradio

Również:

PYTHONPATH = / usr / local / lib / python2.7 / site-packages: /usr/local/lib/python2.7/site-packages/gnuradio

smurff
źródło
1
Ok, więc jak zainstalowałeś gnuradio?
LotusUNSW,
1
Możesz zainstalować gnuradio z dostępnych repozytoriów w PyCharm. PyCharm -> Preferencje (Ustawienia w systemie Windows) -> Projekt -> Project Interpreter -> kliknij sekcję „+” zaloguj się w pakietach i wyszukaj wymagany pakiet. Może być konieczne dodanie repozytoriów, jeśli wymagany pakiet nie jest dostępny w już dodanych repozytoriach. HTH.
avp

Odpowiedzi:

229

Dodawanie ścieżki

Przejdź do Plik → Ustawienia → Ustawienia projektu → Interpreter projektu.

Następnie naciśnij Konfiguruj tłumacza i przejdź do zakładki „Ścieżki”.

karta ścieżki pycharm

Naciśnij przycisk + w obszarze Ścieżki. Możesz podać ścieżkę do modułu, który ma być rozpoznawany.

Ale nie znam ścieżki ...

Otwórz interpreter Pythona, w którym możesz zaimportować moduł.

>> import gnuradio
>> gnuradio.__file__
"path/to/gnuradio"

Najczęściej będziesz mieć taką strukturę folderów:

foobarbaz/
  gnuradio/
    __init__.py
    other_file.py

Chcesz dodać foobarbaz do ścieżki tutaj.

Bandyta
źródło
@smurff, prawdopodobnie podałeś niewłaściwą ścieżkę. Powinien to być katalog z folderem lub plikiem .py o nazwie gnuradio. Zobacz zaktualizowaną odpowiedź.
Brigand,
Zamknij, dla niektórych powodów musiałem dodać katalog bieżący: /usr/local/lib/python2.7/sitepackages zamiast ... / sitepackages / gnuradio zgodnie z oczekiwaniami. To nie ma większego sensu. Jednak teraz
pojawia
12
@FakeRainBrigand Nie widać karty Ścieżki w PyCharm4.
Ankesh Anand
87
W PyCharm 4 CE: Przejdź do „Tłumacza projektu”. Kliknij koło zębate po prawej stronie ścieżki tłumacza. Pojawi się krótkie menu rozwijane, z którego należy wybrać „Więcej…”. Po prawej stronie nowego wyskakującego okienka pojawi się ikona z najechanym myszką tekstem „Pokaż ścieżki dla wybranego tłumacza”. Kliknij ten przycisk. W nowym wyskakującym okienku „Ścieżki tłumacza” możesz dodawać ścieżki. @AnkeshAnand
TheGrimmScientist
3
W przypadku użytkowników komputerów Mac naciśnij PyCharm w lewym górnym rogu, a następnie Preferencje ...-> Projekt-> Projekt Interpreter-> Kliknij +znak, aby dodać pakiet
ofekp
93

Nigdy nie powinieneś modyfikować ścieżki bezpośrednio, ani poprzez zmienne środowiskowe, ani sys.path. Czy używasz systemu operacyjnego (np. apt-get), Czypip wirtualnego, pakiety zostaną zainstalowane w lokalizacji już na ścieżce.

W twoim przykładzie GNU Radio jest zainstalowane w standardowej site-packageslokalizacji systemu Python 2 , która już znajduje się na ścieżce. Wystarczy wskazać PyCharm na właściwego tłumacza; jeśli nie, jest coś innego, co nie jest widoczne. Być może /usr/bin/pythonnie wskazuje tego samego tłumacza, w którym zainstalowano GNU Radio; spróbuj wskazać konkretnie na python2.7plik binarny. Lub PyCharm był nieco zły w wykrywaniu pakietów;File > Invalidate Caches > Invalidate and Restartpoleciłoby to ponowne skanowanie.

Ta odpowiedź obejmie sposób konfigurowania środowiska projektu, instalowania pakietów w różnych scenariuszach i konfigurowania PyCharm. Wielokrotnie odsyłam do Podręcznika użytkownika Python Packaging , napisanego przez tę samą grupę, która utrzymuje oficjalne narzędzia do pakowania Python.


Prawidłowy sposób tworzenia aplikacji w języku Python to użycie virtualenv. Pakiety i wersje są instalowane bez wpływu na system lub inne projekty. PyCharm ma wbudowany interfejs do tworzenia virtualenv i instalowania pakietów. Możesz też utworzyć go z wiersza poleceń, a następnie skierować na niego PyCharm.

$ cd MyProject
$ python2 -m virtualenv env
$ . env/bin/activate
$ pip install -U pip setuptools  # get the latest versions
$ pip install flask  # install other packages

W swoim projekcie PyCharm przejdź do File > Settings > Project > Project Interpreter. Jeśli użyłeś virtualenvwrapperlub PyCharm do utworzenia env, to powinna pojawić się w menu. Jeśli nie, kliknij koło zębate, wybierz Add Locali zlokalizuj plik binarny Python w env. PyCharm wyświetli wszystkie pakiety w wybranym środowisku.

wybierz środowisko

ręcznie zlokalizuj środowisko


W niektórych przypadkach, takich jak GNU Radio, nie ma pakietu do zainstalowania pip, pakiet został zainstalowany w całym systemie podczas instalowania pozostałej części GNU Radio (np. apt-get install gnuradio). W takim przypadku powinieneś nadal używać virtualenv, ale musisz poinformować go o tym pakiecie systemowym.

$ python2 -m virtualenv --system-site-packages env

Niestety wygląda to trochę niechlujnie, ponieważ wszystkie pakiety systemowe będą teraz pojawiać się w twojej env, ale są to tylko linki, nadal możesz bezpiecznie instalować lub aktualizować pakiety bez wpływu na system.


W niektórych przypadkach będziesz mieć wiele rozwijanych pakietów lokalnych i będziesz chciał, aby jeden projekt używał drugiego pakietu. W takim przypadku możesz pomyśleć, że musisz dodać pakiet lokalny do ścieżki innego projektu, ale tak nie jest. Powinieneś zainstalować swój pakiet w trybie programowania . Wszystko to wymaga dodania setup.pypliku do pakietu , który i tak będzie wymagany do prawidłowej dystrybucji i wdrożenia pakietu później.

Minimalna setup.pydla twojego pierwszego projektu:

from setuptools import setup, find_packages

setup(
    name='mypackage',
    version='0.1',
    packages=find_packages(),
)

Następnie zainstaluj go w env drugiego projektu:

$ pip install -e /path/to/first/project
dawidyzm
źródło
51

Dla mnie było to tylko kwestia oznaczenia katalogu jako źródłowego katalogu głównego.

michaelsnowden
źródło
3
To działało dla mnie, wystarczy kliknąć katalog prawym przyciskiem myszy, a następnie Oznacz katalog jako: Źródła root. Dziękuję @michaelsnowden
lmiguelvargasf
2
Pracował dla mnie; dziwne jest to, że jest to mój 15. projekt PyCharm i po raz pierwszy musiałem to zrobić.
Rob Osborne
1
Moje lokalne moduły można było znaleźć w środowisku uruchomieniowym, ale pokazano je z czerwonymi zawijasami, jakby ich nie widać. „Oznacz katalog jako źródłowy root” zdjął squiggle, choć nie jestem pewien, czy to jest poprawna metoda.
Kim Miller,
czy wiesz, jaki jest domyślny źródłowy root dla pycharm, jeśli nie jest określony?
Kanishk Tanwar,
41

Moja wersja to PyCharm Professional edycja 3.4 oraz „ Dodawanie ścieżki” jest inna.

Możesz przejść do „Preferencji” -> „Interpreter projektu”. Wybierz przycisk narzędzia w prawym górnym rogu.

Następnie wybierz „Więcej ...” -> „Pokaż ścieżkę dla wybranego tłumacza” -> „Dodaj”. Następnie możesz dodać ścieżkę.

chenlian
źródło
3
Przynajmniej dla mnie, kiedy to robię i klikam „ok”, wracam, stwierdzam, że nadal nie działa. Następnie wracam do listy ścieżek związanych z bieżącym tłumaczem i stwierdzam, że ścieżka, którą właśnie dodałem, zniknęła.
Peter
po dodaniu ścieżki musisz kliknąć odświeżenie. Zamknij okno. teraz przycisk Zastosuj nie jest aktywny. przełączaj się między ustawieniami i kliknij Zastosuj, jeśli jest aktywny
JuKe
39

Dodaj ścieżkę w PyCharm 2017

Plik -> Ustawienia (lub Ctrl + Alt + S) -> Projekt -> Interpreter projektu

wprowadź opis zdjęcia tutaj Pokaż wszystko

wprowadź opis zdjęcia tutaj Wybierz dolną ikonę po prawej stronie

wprowadź opis zdjęcia tutaj Kliknij przycisk plus, aby dodać nową ścieżkę do modułu

Dorin
źródło
Wreszcie normalna odpowiedź, chciałem tylko wiedzieć, gdzie wkleić domyślny folder pip size_packages.
Stav Bodik,
Zrobiłem to samo, aby dodać ścieżkę do pliku .jar, więc mogę korzystać z niektórych bibliotek Java. Nie wiem jednak, jak określić plik jar i czy ma on być używany przez mój skrypt. Czy możesz mi pomóc dalej?
JRsz
Dzięki! Druga cyfra jest bardzo kluczowa!
Vej
5

NIE zmieniaj ścieżki tłumacza.

Zamiast tego zmień strukturę projektu:

Plik -> Ustawienia -> Projekt -> Struktura projektu -> Dodaj katalog główny zawartości

Daniel Braun
źródło
1
Dzięki, działa świetnie, jeśli import w projekcie wygląda na zepsuty.
om2c0de
3

W przypadku PyCharm Community Edition 2016.3.2 jest to:

„Project Interpreter” -> ikona ustawień w prawym górnym rogu -> „Więcej”.

Następnie po prawej stronie powinna być ikona paczki. Po najechaniu myszą na nią powinno być napisane „Pokaż ścieżki dla wybranego tłumacza”. Kliknij to.

Następnie kliknij przycisk „Dodaj” lub naciśnij „alt + insert”, aby dodać nową ścieżkę.

Wesley
źródło
1

W Eksploratorze projektów możesz kliknąć prawym przyciskiem myszy folder, w którym znajduje się moduł i ustawić go jako „Źródło”.

Zostanie on przeanalizowany w indeksie w celu uzupełnienia kodu, a także innych elementów.


źródło
Moje lokalne moduły można było znaleźć w środowisku uruchomieniowym, ale pokazano je z czerwonymi zawijasami, jakby ich nie widać. „Oznacz katalog jako źródłowy root” zdjął squiggle, choć nie jestem pewien, czy to jest poprawna metoda.
Kim Miller,
0

Jako szybka i brudna poprawka zadziałało to dla mnie: dodanie 2 wierszy przed problematycznym importem:

import sys
sys.path.append('C:\\Python27\\Lib\site-packages')
rundekugel
źródło
0

Jestem nowy w PyCharm (korzystam z wersji 2018.3.4 CE) i Python, więc próbowałem zgodnie z każdą z powyższych sugestii uzyskać dostęp do pakietu PIL (Pillow), o którym wiedziałem, że jest w pakietach system-site-site. Żaden nie działał. Już miałem się poddać na noc, kiedy zauważyłem plik venv / pyvenv.cfg pod moim projektem w oknie Eksploratora projektów. Znalazłem w tym pliku wiersz „include-system-site-packages = false”, więc zmieniłem go na „true”. Problem rozwiązany.

użytkownik3397407
źródło
0

W PyCharm 2020.1 CE i Professional możesz dodać ścieżkę do interpretera języka Python w swoim projekcie, wykonując następujące czynności:

1) Kliknij tłumacza w prawym dolnym rogu projektu i wybierz „Ustawienia tłumacza”

Wybierz Ustawienia tłumacza

2) Kliknij przycisk ustawień po prawej stronie nazwy tłumacza i wybierz „Pokaż wszystko”:

Wybierz opcję Pokaż wszystkich tłumaczy

3) Upewnij się, że wybrano tłumacza projektu i kliknij piąty przycisk na dolnym pasku narzędzi, „pokaż ścieżki dla wybranego tłumacza”:

Pokaż ścieżki dla wybranego interpretera języka Python

4) Kliknij przycisk „+” na dolnym pasku narzędzi i dodaj ścieżkę do folderu zawierającego moduł:

wprowadź opis zdjęcia tutaj

GingerBreadMane
źródło
-1

Pobierz anaconda https://anaconda.org/

po zakończeniu instalacji anakondy ...

Przejdź do Ustawienia -> Ustawienia projektu -> Tłumacz projektu.

Następnie przejdź do zakładki „Ścieżki” i wyszukaj / anaconda / bin / python

kliknij Zastosuj

wprowadź opis zdjęcia tutaj

Jmitsh
źródło