Tôi không biết liệu pycharm có liên quan gì đến vấn đề hay không, hoặc nếu tôi là noob.sự cố khi nhập mô-đun python từ các gói khác (pycharm cung cấp tham chiếu chưa được giải quyết)
Đây là một ảnh chụp màn hình của bố trí thư mục của tôi và ba tập tin mã:
Tôi đang sử dụng Pycharm trên cửa sổ và "my_working_directory" là thư mục làm việc của tôi. Bạn có thể thấy trong ảnh chụp màn hình trong mod1.py "từ package2.mod2" được gạch dưới có nghĩa là "tham chiếu chưa được giải quyết".
Khi tôi cố gắng để chạy mod1.py tôi nhận được:
C:\Python27\python.exe C:/Users/Robert/PycharmProjects/play/my_working_directory/package1/mod1.py
Traceback (most recent call last):
File "C:/Users/Robert/PycharmProjects/play/my_working_directory/package1/mod1.py", line 1, in <module>
from package2.mod2 import SomeClass
ImportError: No module named package2.mod2
Khi tôi chạy main.py tôi nhận được:
C:\Python27\python.exe C:/Users/Robert/PycharmProjects/play/my_working_directory/main.py
hi
Tôi không hiểu tại sao một công trình và không phải là khác .
Vấn đề chính là pycharm cho tôi không tự động hoàn thành và từ mod1 nó không thể phát hiện gói2. Đây là một vấn đề lớn bởi vì package1 là gói xem của tôi, package2 là các mô hình hoặc các gói utils hoặc lib của tôi (trong một bộ điều khiển xem mô hình lớn). (ví dụ: https://github.com/coto/gae-boilerplate/blob/master/web/handlers.py pycharm không phát hiện bất kỳ câu lệnh nào từ lib.? import ?. (đưa ra tham chiếu chưa được giải quyết)
Đây có phải là cách tốt nhất để nhập gói không? có autocomplete
nên "my_working_directory" được làm thành một gói phần mềm bằng cách làm khác init tập tin py
Hãy suy nghĩ bạn cần thêm nó vào đường dẫn python. bạn có thể thấy package1 từ main, nhưng khi import mod1 bạn đang ở mod1 nó không thể thấy package2 từ import ở đó bởi vì nó nằm trong thư mục cha, không phải trong package1. – GP89
@ GP89 "thêm nó vào đường dẫn python của bạn", "nó" là gì? C: \ Users \ Robert \ PycharmProjects \ play \ my_working_directory \? Ngoài ra nó nên được công việc của tôi IDE để thêm này cho tôi? hoặc cho tất cả các dự án của tôi, tôi nên rối tung với các thiết lập đường dẫn windows dưới compter> properties> advanced settings> biến môi trường –
Ah, tôi tìm thấy dưới pycharm> settings> project structure, tôi phải thay đổi root project từ/play sang/play /thư mục làm việc !!! THanks rất nhiều để giúp tôi tìm ra điều này. –