Jak sprawić, by IntelliJ rozpoznał popularne moduły Pythona?

198

Używam IntelliJ 10 IDEA Ultimate Edition.

Utworzyłem nowy plik Test.py, a IntelliJ poprawnie przełączył się do trybu analizy Pythona. (Mogę to potwierdzić, wpisując „d”, pojawia się jako „def” jako sugestia, a prawidłowe naciśnięcie karty daje mi „def:”)

Jednak gdy próbuję tego kodu ...

import os

cwd = os.getcw <Ctrl-space>

Stają się dwie rzeczy ...

  1. Dostrzegam zwięzłe podkreślenie pod osą, a po najechaniu na niego pojawia się komunikat „Nierozpoznany odnośnik”
  2. Nie dostaję żadnych sugestii dotyczących Ctrl-spacja powyżej, gdy spodziewam się zobaczyć „getcwd”.

Zakładam, że musi to wynikać z mojej niepoprawnej konfiguracji IntelliJ, aby obsługiwać moduły python, ale nie mam pojęcia, czego brakuje.

Jakiś użytkownik IntelliJ / Python może mi pomóc?

Toddarooski
źródło

Odpowiedzi:

208

Wystarczy utworzyć i dodać zestaw SDK Python

File -> Project Structure -> Project -> Project SDK -> new

i wybierz ścieżkę instalacji interpretera języka Python (na przykład w systemie C:\Python26Windows i /usr/bin/python2.7Linux) jako ścieżkę główną.

Powiązana dyskusja: http://devnet.jetbrains.net/thread/286883

db42
źródło
6
Nadal prawda dzisiaj. OSX - / usr / bin / python
ThinkBonobo
2
Dzisiaj na OSX El Capitan skorzystałem z tej wskazówki (dzięki!); FWIW, interpretery Pythona (miałem zainstalowane 2.6 i 2.7) były włączone, /Libraryale IntelliJ znalazł je w porządku, kiedy stworzyłem virtualenv.
Dawngerpony 27.04.16
20
Zrobione bez zmian.
OrangeDog
5
Na Maca z zainstalowaną homebrew wersją Pythona (wskazane dla El Capitan i nie tylko ze względu na ograniczenia katalogów systemowych), chcesz /usr/local/bin/python.
Dawngerpony
Oprócz tego musiałem również skonfigurować aspekt (patrz odpowiedź poniżej przez @linuts)
Janac Meena
134

Czy skonfigurowałeś aspekt interpretera python?

Otwórz strukturę projektu CTRL+ ALT+ SHIFT+S

Project settings -> Facets -> expand Python click on child -> Python Interpreter

Następnie:

Project settings -> Modules -> Expand module -> Python -> Dependencies -> select Python module SDK

linuts
źródło
1
v12.1.4 Nie ma opcji menu Ustawienia projektu> Aspekty, ale rozwiązanie @ db42 działało
Trindaz,
Stworzyłem aspekt, ale to nie zadziałało, twoją odpowiedzią było rozwiązanie !! wspaniały! :)
Rodislav Moldovan
Dziwny. Nie wiem, co to jest aspekt, więc sprawdziłem go, a poniższa strona nie pokazuje Pythona jako dostępnego aspektu. jetbrains.com/idea/help/…
netskink 17.04.15
1
IntelliJ IDEA 14 Ultimate ma tę funkcję i działał idealnie, nie przerywając wykrywania modułu Java, tak jak zrobiła to odpowiedź db42.
Patrick M,
po wykonaniu tej czynności nie wyświetla nawet sugestii dotyczących wbudowanych modułów, w których wcześniej był
Bharat
75

Jeśli Twój zestaw SDK Python jest poprawnie skonfigurowany i nadal występuje problem z nierozpoznaniem wbudowanych funkcji, spróbuj wykonać następujące czynności:

File -> Invalidate Caches/Restart
Turnia
źródło
2
Po dodaniu wirtualnej env 5 razy, pomogło mi to naprawić w IDEA 2016.2.1
dlite922
Zostało to naprawione dla mnie po dodaniu wirtualnej env.
Andrea Bergonzo
Przekonałem
18

Oto co musiałem zrobić. (I prawdopodobnie zapomniałem ważnego aspektu mojego problemu, że nie był on pierwotnie skonfigurowany jako projekt Python, ale projekt Java, z niektórymi plikami Python).

Ustawienia projektu -> Moduły -> przycisk Plus (dodaj moduł) -> Python

Następnie kliknij przycisk „...” obok Tłumacza Python.

W wyświetlonym oknie dialogowym „Konfiguruj zestaw SDK” kliknij przycisk „+”. Wybierz „Python SDK”, a następnie wybierz domyślny skrót „Python”, który pojawia się w oknie dialogowym wyszukiwarki

Poczekaj około 5 minut. Przeczytaj kilka wskazówek dotyczących wydajności. :)

Kliknij OK

Poczekaj, aż system odbuduje niektóre indeksy.

Brawo! Podpowiedzi do kodu wróciły do ​​moich modułów!

Toddarooski
źródło
2
„Poczekaj około 5 minut. Przeczytaj kilka wskazówek dotyczących wydajności”. niesamowite
Kirby 18.04.16
To najwyraźniej rozwiązało moje problemy (również mój projekt został początkowo stworzony jako projekt Java)
Andrea Bergonzo
5

Kolejna możliwa poprawka (rozwiązała mój problem)

Być może środowisko zostało poprawnie skonfigurowane, ale z jakiegoś powodu zepsuło się po drodze. W takim przypadku przejdź do:

file > project settings > modules

Wdróż listę zestawów SDK i poszukaj czerwonej linii [invalid]na końcu. Jeśli go znajdziesz, musisz ponownie utworzyć sdk Pythona.

Prawdopodobnie jest tam również poprzednio działający zestaw SDK, ale nie czerwony. Usuń to.

Teraz możesz kliknąć newprzycisk i dodać swój ulubiony wirtualny python. I powinno już działać.

Romain Vincent
źródło
3

Kilka kroków, które mi pomogły (niektóre z nich są wymienione powyżej):

Otwórz strukturę projektu przez:

Command +; (użytkownicy komputerów Mac) LUB kliknij prawym przyciskiem myszy projekt ->Otwórz ustawienia modułu

  1. Aspekty ->+ ->Python ->< twój- projekt>-> OK
  2. Moduły ->Python-> <wybierz interpreter python>
  3. Zestaw ->SDK projektu-> <wybierz odpowiedni SDK>
  4. SDK -><upewnij się, że jest to właściwy>

Kliknij OK.

Otwórz Konfiguracje uruchamiania / debugowania przez: Uruchom ->edycję konfiguracji

  1. Python Interpreter -><upewnij się, że jest właściwy>

Kliknij OK.

Eli
źródło
1

W ten sposób rozwiązałem mój problem (zaimportowałem projekt i pokazywał się tam tylko, nowo utworzone pliki nie wyświetlały tych błędów):

1) Command + alt + R (Kontrola w przypadku okien

2) Pojawi się okno debugowania, wybierz plik i naciśnij strzałkę w prawo (->) i wybierz Edytuj, a następnie naciśnij enter (pojawi się okno Edytuj ustawienia konfiguracji)

3) W trakcie konfiguracji u dołu widoczny jest błąd (wybierz moduł z poprawnym sdk Pythona), więc w Pythonie Interpreter zaznacz opcję Użyj określonego interpretera, a następnie w rozwijanej wybierz wersję Pythona

(W przypadku, gdy nie ma tam Pythona, pobierz wtyczkę Pythona dla intelliJ, używając następującego linku https://www.jetbrains.com/help/idea/2016.3/installing-updating-and-uninstalling-repository-plugins.html

4) Kliknij Zastosuj, a następnie Zamknij.

Bingo jest gotowe.

Hulesh Chandra
źródło
0

Użyj pliku wymagań (patrz link do dokumentacji JetBrains)

W moim przypadku potrzebowałem arrow. Więc dodałem

arrow==0.7.0

do moich projektów requirements.txt

Następnie Intellij poprosił mnie o dodanie biblioteki za pierwszym razem, gdy napisałem import arroww skrypcie Python

Kirby
źródło
0

Mój problem był podobny do @Toddarooski, z tym wyjątkiem, że moduł, który miałem, w zakładce „Zależności”, nie zawierał żadnego zestawu SDK. Kliknąłem prawym przyciskiem myszy na „SDK”, wybrałem edycję z rozwijanego menu i wybrałem mój zestaw SDK do Pythona. To załatwiło sprawę.

użytkownik108569
źródło
0

Uruchomiłem go po odznaczeniu następujących opcji w konfiguracjach uruchamiania / debugowania dla main.py

Add content roots to PYTHONPATH

Add source roots to PYTHONPATH

Dzieje się tak po tym, jak unieważniłem pamięć podręczną i uruchomiłem ponownie.

użytkownik3079474
źródło
0

Nawet mój Intellisense w Pycharmie nie działał dla modułów takich jak czas Problem w moim systemie nie był wybrany Interpreter Przejdź do Plik -> Ustawienia ... (Ctrl + Alt + S) Otwórz projekt Interpretera

Interpreter projektu W moim przypadkuzostał wybrany. Wybrałem dostępny interpreter Pythona. Jeśli nie jest dostępny, możesz dodać nowego tłumacza.

PIYUSH
źródło