Làm cách nào để IntelliJ nhận ra các mô-đun Python phổ biến?


198

Tôi đang sử dụng IntelliJ 10 IDEA Ultimate Edition.

Tôi đã tạo một tệp mới Test.txt và IntelliJ đã chuyển chính xác sang chế độ phân tích cú pháp Python. (Tôi có thể xác nhận điều này bằng cách nhập "d", nó hiện lên "def" như một gợi ý và nhấn tab chính xác mang lại cho tôi "def:")

Tuy nhiên, khi tôi thử mã này ...

import os

cwd = os.getcw <Ctrl-space>

Hai điều xảy ra ....

  1. Tôi nhận được một gạch chân ngầm bên dưới os và di chuột qua nó cho tôi một thông báo "os 'tham chiếu chưa được giải quyết"
  2. Tôi không nhận được đề xuất nào khi nhấn Ctrl-space ở trên, khi tôi mong đợi được xem "getcwd".

Tôi cho rằng đây phải là kết quả của việc tôi không cấu hình IntelliJ đúng cách để xử lý các mô-đun python, nhưng tôi không biết tôi đang thiếu cái gì.

Bất kỳ người dùng IntelliJ / Python nào có thể giúp tôi không?

Câu trả lời:


208

Chỉ cần tạo và thêm SDK Python

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

và chọn đường dẫn cài đặt trình thông dịch Python của bạn (ví dụ: C:\Python26trong windows và /usr/bin/python2.7Linux) làm đường dẫn chính.

Thảo luận liên quan: http://devnet.jetbrains.net/thread/286883


6
Vẫn đúng ngày hôm nay. OSX - / usr / bin / python
ThinkBonobo

2
Hôm nay trên OSX El Capitan tôi đã sử dụng mẹo này (cảm ơn!); FWIW, các trình thông dịch python (tôi đã cài đặt 2.6 và 2.7) /Library, nhưng IntelliJ thấy chúng chỉ tốt khi tôi tạo một virtualenv.
Dawngerpony

20
Làm xong mà, không thay đổi.
OrangeDog

5
Đối với Mac có phiên bản Python được cài đặt homebrew (khuyên dùng cho El Capitan và hơn thế nữa do các hạn chế đối với các thư mục hệ thống), bạn muốn /usr/local/bin/python.
Dawngerpony

Ngoài ra, tôi cũng phải thiết lập khía cạnh (xem câu trả lời dưới đây của @linuts)
Janac Meena

134

Bạn đã thiết lập một khía cạnh phiên dịch python?

Cấu trúc dự án mở CTRL+ ALT+ SHIFT+S

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

Sau đó:

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


1
v12.1.4 Không có tùy chọn menu Cài đặt dự án> Khuôn mặt, nhưng giải pháp của @ db42 đã có hiệu quả
Trindaz

Tôi đã tạo ra một khía cạnh, và nó không hoạt động, câu trả lời của bạn là giải pháp !! tuyệt vời :)
Rodislav Moldovan

Lạ Tôi không biết khía cạnh là gì nên tôi đã tra cứu nó và trang bên dưới không hiển thị trăn như một khía cạnh có sẵn. jetbrains.com/idea/help/ từ
netskink

1
IntelliJ IDEA 14 Ultimate có tính năng này và nó hoạt động hoàn hảo mà không phá vỡ phát hiện mô-đun Java của tôi như câu trả lời của db42 đã làm.
Patrick M

sau khi làm điều này, nó thậm chí không hiển thị các đề xuất để xây dựng các mô-đun mà trước đó nó đã ở đó
Bharat

75

Nếu SDK Python của bạn được cấu hình đúng và bạn vẫn gặp phải vấn đề mà các nội trang không được nhận ra, hãy thử điều này:

File -> Invalidate Caches/Restart

2
Sau khi thêm env ảo 5 lần, điều này đã giúp tôi khắc phục nó với IDEA 2016.2.1
dlite922

Điều này đã được khắc phục sự cố cho tôi sau khi đã thêm một env ảo.
Andrea Bergonzo

Tôi thấy rằng việc bỏ và khởi chạy lại IntelliJ đã sửa nó cho tôi, tôi đoán đó cũng là điều tương tự
drevicko

18

Đây là những gì tôi phải làm. (Và tôi có lẽ đã quên một khía cạnh quan trọng của vấn đề của mình, đó là ban đầu nó không được thiết lập như một dự án Python, mà là một dự án Java, với một số tệp python trong đó.)

Cài đặt dự án -> Mô-đun -> Nút Plus (thêm mô-đun) -> Python

Sau đó, nhấp vào nút "..." bên cạnh Trình thông dịch Python.

Trong hộp thoại "Cấu hình SDK" bật lên, nhấp vào nút "+". Chọn "Python SDK", sau đó chọn phím tắt "Python" mặc định xuất hiện trong hộp thoại tìm kiếm của tôi

Đợi khoảng 5 phút. Đọc một số lời khuyên về năng suất. :)

Nhấp vào Ok

Chờ hệ thống xây dựng lại một số chỉ mục.

Hoan hô! Mã gợi ý đã trở lại cho các mô-đun của tôi!


2
"Đợi khoảng 5 phút. Đọc một số mẹo năng suất." tuyệt vời
Kirby

Điều này rõ ràng đã giải quyết vấn đề của tôi (cũng là dự án của tôi ban đầu được tạo như một dự án Java)
Andrea Bergonzo

5

Một cách khắc phục khác (giải quyết vấn đề của tôi)

Bạn có thể đã cấu hình môi trường đúng cách nhưng vì một số lý do, nó đã bị hỏng trên đường đi. Trong trường hợp này, hãy đi đến:

file > project settings > modules

Triển khai danh sách SDK và tìm kiếm một dòng màu đỏ [invalid]ở cuối. Nếu bạn tìm thấy một, bạn phải tạo lại một sdk python.

Có khả năng SDK hoạt động trước đây của bạn cũng ở đó, nhưng không phải màu đỏ. Xóa đi.

Bây giờ bạn có thể nhấp vào newnút và thêm virtualenv python yêu thích của bạn. Và nó nên hoạt động ngay bây giờ.


3

Vài bước giúp tôi (một số trong số chúng được đề cập ở trên):

Cấu trúc dự án mở bằng cách:

lệnh +; (người dùng mac) HOẶC nhấp chuột phải vào dự án ->Cài đặt mô-đun mở

  1. Khía cạnh ->+ ->Python -><your-project>-> OK
  2. Mô-đun ->Python-> <chọn trình thông dịch python>
  3. Dự ->án SDK dự án-> <chọn SDK có liên quan>
  4. SDK -><đảm bảo rằng nó đúng

Nhấp chuột OK.

Mở Cấu hình Chạy / Gỡ lỗi bằng cách: Chạy ->Chỉnh sửa Cấu hình

  1. Trình thông dịch Python -><đảm bảo rằng nó là đúng>

Nhấn vào đây OK.


1

Đây là cách tôi giải quyết vấn đề của mình (tôi đã nhập dự án và nó chỉ hiển thị ở đó, các tệp mới được tạo không hiển thị các lỗi đó):

1) Lệnh + alt + R (Điều khiển trong trường hợp cửa sổ

2) Cửa sổ gỡ lỗi sẽ xuất hiện, chọn tệp của bạn và nhấn mũi tên phải (->) và chọn Chỉnh sửa sau đó nhấn enter (Cửa sổ cài đặt cấu hình chỉnh sửa sẽ xuất hiện)

3) Trong cấu hình, ở phía dưới, bạn có thể thấy lỗi (vui lòng chọn mô-đun có sdk python hợp lệ), vì vậy, trong Trình thông dịch Python, hãy kiểm tra Sử dụng Trình thông dịch được chỉ định, sau đó thả xuống, bạn chọn phiên bản Python của mình

(Trong trường hợp python không có, hãy tải xuống plugin python cho intelliJ bằng liên kết sau https://www.jetbrains.com/help/idea/2016.3/installing-updating-and-uninstalling-reposeective-plugins.html

4) Nhấp vào áp dụng sau đó đóng nó.

Chơi lô tô đã xong.


0

Sử dụng Tệp yêu cầu (xem liên kết đến tài liệu JetBrains)

Trong trường hợp của tôi, tôi cần arrow. Vì vậy, tôi đã thêm

arrow==0.7.0

cho các dự án của tôi requirements.txt

Sau đó, Intellij nhắc tôi thêm thư viện lần đầu tiên tôi viết import arrowbằng tập lệnh Python


0

Vấn đề của tôi tương tự như của @Toddarooski, ngoại trừ mô-đun tôi có, trong tab "Phụ thuộc", không có SDK được liệt kê. Tôi nhấp chuột phải vào 'SDK', chọn chỉnh sửa từ menu thả xuống và chọn SDK Python của tôi. Điều đó đã lừa


0

Tôi đã làm cho nó hoạt động sau khi tôi bỏ chọn các tùy chọn sau trong Cấu hình Chạy / Gỡ lỗi cho main.py

Add content roots to PYTHONPATH

Add source roots to PYTHONPATH

Đây là sau khi tôi đã vô hiệu hóa bộ đệm và khởi động lại.


0

Ngay cả Intellisense của tôi ở Pycharm cũng không hoạt động cho các mô-đun như thời gian Vấn đề trong hệ thống của tôi là không có Trình thông dịch nào được chọn Chuyển đến Tệp -> Cài đặt ... (Ctrl + Alt + S) Mở Trình thông dịch dự án

Thông dịch viên dự án Trong trường hợp của tôiđã được lựa chọn. Tôi đã chọn trình thông dịch python có sẵn. Nếu không có sẵn, bạn có thể thêm một thông dịch viên mới.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.