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?

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


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


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

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!


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.


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.


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.


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


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.


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.


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.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.