Bagaimana saya membuat IntelliJ mengenali modul Python umum?

198

Saya menggunakan IntelliJ 10 IDEA Ultimate Edition.

Saya telah membuat file baru Test.py, dan IntelliJ telah dengan benar beralih ke mode parsing Python. (Saya bisa mengkonfirmasi ini dengan mengetikkan "d", itu muncul "def" sebagai saran, dan menekan tab dengan benar memberi saya "def:")

Namun, ketika saya mencoba kode ini ...

import os

cwd = os.getcw <Ctrl-space>

Dua hal terjadi ....

  1. Saya mendapat garis bawah yang agak bergaris bawah dan melayang di atasnya memberi saya pesan "os 'referensi yang belum terselesaikan"
  2. Saya tidak mendapatkan saran mengenai Ctrl-space di atas, ketika saya mengharapkan untuk melihat "getcwd".

Saya berasumsi bahwa ini pasti akibat saya tidak mengkonfigurasi IntelliJ dengan benar untuk menangani modul python, tapi saya tidak tahu apa itu yang saya lewatkan.

Adakah pengguna IntelliJ / Python yang bisa membantu saya?

Toddarooski
sumber

Jawaban:

208

Cukup buat dan tambahkan Python SDK

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

dan pilih jalur instalasi interpreter Python Anda (misalnya, C:\Python26di windows dan /usr/bin/python2.7di Linux) sebagai jalur home.

Diskusi terkait: http://devnet.jetbrains.net/thread/286883

db42
sumber
6
Masih berlaku sampai hari ini. OSX - / usr / bin / python
ThinkBonobo
2
Hari ini di OSX El Capitan saya menggunakan tip ini (terima kasih!); FWIW, interpreter python (saya memiliki 2,6 dan 2,7 diinstal) berada di /Library, tetapi IntelliJ menemukan mereka baik-baik saja ketika saya membuat virtualenv.
Dawngerpony
20
Selesai, tidak ada perubahan.
OrangeDog
5
Untuk Mac dengan versi Python versi homebrew yang terinstal (disarankan untuk El Capitan dan seterusnya karena pembatasan pada direktori sistem), Anda menginginkannya /usr/local/bin/python.
Dawngerpony
Selain itu, saya juga harus mengatur sisi (lihat jawaban di bawah oleh @linuts)
Janac Meena
134

Sudahkah Anda mengatur aspek juru bahasa python?

Buka Struktur Proyek CTRL+ ALT+ SHIFT+S

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

Kemudian:

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

linuts
sumber
1
v12.1.4 Tidak memiliki opsi Pengaturan Proyek> menu Faset, tetapi solusi @ db42 berhasil
Trindaz
Saya telah menciptakan satu sisi, dan itu tidak berhasil, jawaban Anda adalah solusinya !! luar biasa! :)
Rodislav Moldovan
Aneh. Saya tidak tahu segi apa, jadi saya mencarinya dan halaman di bawah ini tidak menunjukkan python sebagai aspek yang tersedia. jetbrains.com/idea/help/…
netskink
1
IntelliJ IDEA 14 Ultimate memiliki fitur ini, dan berfungsi dengan baik tanpa melanggar deteksi modul Java saya seperti jawaban db42.
Patrick M
setelah melakukan ini bahkan tidak menunjukkan saran untuk membangun modul yang sebelumnya ada di sana
Bharat
76

Jika Python SDK Anda dikonfigurasikan dengan benar dan Anda masih menghadapi masalah yang tidak dikenali builtin, coba ini:

File -> Invalidate Caches/Restart
Puncak gunung
sumber
2
Setelah menambahkan env virtual kembali 5 kali, ini membantu memperbaikinya untuk saya dengan IDEA 2016.2.1
dlite922
Ini adalah masalah bagi saya setelah menambahkan env virtual.
Andrea Bergonzo
Saya menemukan bahwa berhenti dan meluncurkan kembali IntelliJ memperbaikinya untuk saya, saya kira itu adalah hal yang sama
drevicko
18

Inilah yang harus saya lakukan. (Dan saya mungkin lupa aspek penting dari masalah saya, yaitu bahwa ini tidak diatur sebagai proyek Python pada awalnya, tetapi proyek Java, dengan beberapa file python di dalamnya.)

Pengaturan Proyek -> Modul -> tombol Plus (tambahkan modul) -> Python

Kemudian, klik tombol "..." di sebelah Python Interpreter.

Dalam dialog "Konfigurasikan SDK" yang muncul, klik tombol "+". Pilih "Python SDK", lalu pilih pintasan "Python" default yang muncul di dialog pencari saya

Tunggu sekitar 5 menit. Baca beberapa tips produktivitas. :)

Klik Oke

Tunggu sistem untuk membangun kembali beberapa indeks.

Hore! Petunjuk kode kembali untuk modul saya!

Toddarooski
sumber
2
"Tunggu sekitar 5 menit. Baca beberapa tips produktivitas." luar biasa
Kirby
Ini tampaknya menyelesaikan masalah saya (juga proyek saya pada awalnya dibuat sebagai proyek Java)
Andrea Bergonzo
5

Kemungkinan perbaikan lain (menyelesaikan masalah saya)

Anda mungkin telah mengkonfigurasi lingkungan dengan benar tetapi karena beberapa alasan itu rusak di sepanjang jalan. Dalam hal ini, buka:

file > project settings > modules

Sebarkan daftar SDK dan cari garis merah dengan [invalid] di bagian akhir. Jika Anda menemukannya, Anda harus membuat ulang python sdk.

Kemungkinan SDK Anda yang sebelumnya berfungsi juga ada di sana, tetapi tidak merah. Hapus.

Sekarang Anda dapat mengklik newtombol dan menambahkan virtualenv python favorit Anda. Dan itu seharusnya bekerja sekarang.

Romain Vincent
sumber
3

Beberapa langkah yang membantu saya (beberapa di antaranya disebutkan di atas):

Buka struktur proyek dengan:

perintah +; (pengguna mac) ATAU klik kanan pada proyek ->Buka Pengaturan Modul

  1. Aspek ->+ ->Python -><Anda-proyek> ->OK
  2. Modul ->Python -><select python interpreter>
  3. Project ->Project SDK -><pilih SDK yang relevan>
  4. SDK -><pastikan itu yang benar>

Klik OK.

Buka Konfigurasi Run / Debug oleh: Jalankan ->Edit Konfigurasi

  1. Penerjemah Python -><pastikan itu benar>

Klik OK.

Eli
sumber
1

Ini adalah bagaimana saya menyelesaikan masalah saya (saya telah mengimpor proyek dan itu hanya menunjukkan di sana, file yang baru dibuat tidak menunjukkan kesalahan-kesalahan itu):

1) Command + alt + R (Kontrol dalam hal windows

2) Jendela debug akan muncul, pilih file Anda dan tekan panah kanan (->) dan pilih Edit lalu tekan enter (Edit jendela pengaturan konfigurasi akan muncul)

3) Di bawah konfigurasi, di bagian bawah Anda dapat melihat kesalahan (silakan pilih modul dengan python sdk yang valid), Jadi pada Python Interpreter, centang Use Specified Interpreter, lalu pada drop down Anda memilih versi Python Anda

(Jika python tidak ada, unduh plugin python untuk intelliJ menggunakan tautan berikut https://www.jetbrains.com/help/idea/2016.3/installing-updating-and-uninstalling-repository-plugins.html

4) Klik berlaku lalu tutup.

Bingo sudah selesai.

hulesh chandra
sumber
0

Gunakan File Persyaratan (lihat tautan ke dokumentasi JetBrains)

Dalam kasus saya, saya perlu arrow. Jadi, saya menambahkan

arrow==0.7.0

untuk proyek saya requirements.txt

Kemudian Intellij meminta saya untuk menambahkan perpustakaan pertama kali yang saya tulis import arrowdalam skrip Python

Kirby
sumber
0

Masalah saya mirip dengan @Toddarooski, kecuali modul yang saya miliki, di bawah tab "Dependency", tidak memiliki SDK yang terdaftar. Saya mengklik kanan pada 'SDK', memilih edit dari menu drop down, dan memilih Python SDK saya. Itu berhasil.

pengguna108569
sumber
0

Saya mulai berfungsi setelah saya hapus centang pada opsi berikut di Run / Debug Configurations for main.py

Add content roots to PYTHONPATH

Add source roots to PYTHONPATH

Ini setelah saya membatalkan cache dan memulai kembali.

pengguna3079474
sumber
0

Bahkan Intellisense saya di Pycharm tidak berfungsi untuk modul seperti waktu . Masalah dalam sistem saya adalah tidak ada Penerjemah dipilih. Buka File -> Pengaturan ... (Ctrl + Alt + S) Buka Project Interpreter

Penerjemah Proyek Dalam kasus sayaterpilih. Saya memilih juru bahasa python yang tersedia. Jika tidak tersedia, Anda dapat menambahkan juru bahasa baru.

PIYUSH
sumber