Tôi đã viết một mô-đun (một tệp my_mod.py
tệp nằm trong thư mục my_module
). Hiện tại, tôi đang làm việc trong tập tin cool_script.py
nằm trong thư mục cur_proj
. Tôi đã mở thư mục trong PyCharm bằng File - open (và tôi giả sử, do đó, nó là một dự án PyCharm).
Trong ProjectView (CMD-7), tôi có thể thấy dự án của mình cur_proj
(màu đỏ) và trong "Thư viện bên ngoài" tôi thấy my_module
. Trong cool_script.py, tôi có thể viết
from my_module import my_mod as mm
và PyCharm thậm chí còn đưa ra đề xuất cho my_mod. Càng xa càng tốt.
Tuy nhiên, khi tôi cố chạy cool_script.py, PyCharm nói với tôi "Không có mô-đun nào có tên my_module"
Điều này có vẻ lạ đối với tôi, bởi vì
A) trong thiết bị đầu cuối (OS 10.10.2), trong python, tôi có thể nhập mô-đun không có vấn đề gì - có một mục tương ứng trong PYTHONPATH trong .bashrc
B) trong PyCharm - Cài đặt - Project cur_proj - Trình thông dịch dự án - CogWheel bên cạnh trình thông dịch python - thêm - hiển thị các đường dẫn cho biểu tượng trình thông dịch đã chọn, các đường dẫn từ PYTHONPATH sẽ xuất hiện (theo tôi nghĩ họ nên)
Do đó, tại sao tôi gặp lỗi khi tôi cố chạy cool_script.py? - Tôi còn thiếu gì?
Ghi chú:
- Tôi không khai báo một phiên bản python khác / đặc biệt ở đầu cool_script.py
- Tôi chắc chắn rằng đường dẫn đến
my_module
là chính xác - Tôi đặt
__init__.py
các tệp (tệp trống) cả trongmy_module
và trongcur_proj
- Tôi không dùng
virtualenv
Phụ lục 2015-ngày 25 tháng 2
Khi tôi vào PyCharm để chạy - Chỉnh sửa cấu hình, cho dự án hiện tại của tôi, có hai tùy chọn được chọn với dấu kiểm: " Thêm gốc nội dung vào PYTHONPATH " và " Thêm gốc nguồn vào PYTHONPATH ". Khi tôi đã bỏ chọn cả hai, tôi có thể tải mô-đun của mình.
Vì vậy, nó hoạt động bây giờ - nhưng tại sao ?
Những câu hỏi khác xuất hiện:
- "Rễ nội dung" là gì và "rễ nguồn" là gì? Và tại sao việc thêm một cái gì đó vào PYTHONPATH lại khiến nó bị hỏng?
- Tôi có nên bỏ chọn cả hai tùy chọn đó mọi lúc (cũng như trong các mặc định, không chỉ các cấu hình cụ thể của dự án (bảng bên trái của hộp thoại Cấu hình chạy / gỡ lỗi)?
Enable Django Support
trong cài đặt Languages & Frameworks -> Django
trong phiên bản Pro của PyCharm. Nó đã mở một giao diện điều khiển django gây ra vấn đề nhập khẩu.
from foldername.mymodule import mymethod
. Một điều khác tôi phải làm là thêm thư mục _init .py trống vào tất cả các thư mục mà bạn sẽ sử dụng để truy cập mô-đun của mình để trong trường hợpfrom parentfolder.childfolder.mymodule ...
bạn cần init trong hai thư mục. Tùy thuộc vào vị trí các thư mục được đặt tương đối với nhau, bạn có thể cần có gói cấp cao nhấtsys.path
như được mô tả trong câu trả lời