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?

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


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


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

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


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!


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ć.


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.


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.


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


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ę.


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.


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.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.