การนำเข้าโมดูล Python ทำงานได้จากบรรทัดคำสั่ง แต่ไม่ได้มาจาก PyCharm


8

ไพ ธ อนเริ่มต้นของฉันถูกตั้งค่าเป็นอันที่มีการแจกจ่ายอนาคอนดาของไพ ธ อน นี้จะพบได้ที่/home/karnivaurus/anaconda/bin/pythonและฉันได้ทำนี้เริ่มต้นด้วยการเพิ่มของฉันไฟล์ต่อไปนี้:.bashrcexport PATH=/home/karnivaurus/anaconda/bin:$PATH

ฉันมีแพ็กเกจ Python ชื่อcaffeซึ่งตั้งอยู่ที่/home/karnivaurus/caffe/distribute/pythonและฉันได้เพิ่มสิ่งนี้ลงในพา ธ การค้นหาแพ็คเกจโดยเพิ่ม.bashrcไฟล์ของฉันดังต่อไปนี้: export PYTHONPATH=${PYTHONPATH}:/home/karnivaurus/caffe/distribute/python.

ตอนนี้ฉันมีไฟล์ Python อย่างง่ายที่เรียกว่าtest.pyมีเนื้อหาดังต่อไปนี้:

import caffe
print "Done."

หากฉันรันสิ่งนี้ด้วยการเข้าpython test.pyสู่เครื่องเทอร์มินัลก็จะทำงานได้ดีโดยพิมพ์ "เสร็จสิ้น" ปัญหาที่ฉันมีคือเมื่อฉันเรียกใช้งานใน PyCharm IDE ใน PyCharm /home/karnivaurus/anaconda/bin/pythonเราได้ตั้งล่ามที่จะ แต่เมื่อฉันเปิดtest.pyใน PyCharm และเรียกใช้ไฟล์ใน IDE ฉันได้รับข้อผิดพลาดต่อไปนี้:

ImportError: No module named caffe

ดังนั้นคำถามของฉันคือ: ทำไม PyCharm ไม่สามารถหาcaffeโมดูลเมื่อรันสคริปต์ Python แต่จะพบได้เมื่อฉันเรียกใช้สคริปต์จากเทอร์มินัล

ขอบคุณ!


2
ฉันเดา PyCharm ไม่สนใจคุณ.bashrcเนื่องจากเป็นไฟล์ปรับแต่งเฉพาะของ bash คุณต้องตั้งค่าตัวแปรนั้นใน PyCharm หรือในเช่น.profile
ผู้บัญชาการ Byte

คำตอบ:


11

ตามที่ ByteCommander กล่าวในความคิดเห็น PyCharm ไม่ได้ใช้ bashrc ดังนั้นจึงไม่ทราบว่าห้องสมุดของคุณอยู่ที่ไหน

ในหน้าจอเดียวกับที่คุณเพิ่มล่ามคุณสามารถเห็นไอคอนล้อคลิกมันมันจะแสดงเมนูคลิกเพิ่มเติม คุณควรเห็นหน้าจอดังนี้:

การกำหนดค่า PyCharm Interpreter

คุณควรเลือกล่ามของคุณและคลิกที่ปุ่มสุดท้าย นี่ควรจะเปิดหน้าต่างนี้:

การกำหนดค่าพา ธ ของล่าม

ตอนนี้คลิกที่ไอคอนบวกคุณควรจะสามารถเพิ่มเส้นทางของคุณเองสำหรับห้องสมุด


2
และนี่เป็นตัวอย่างที่ดีเกี่ยวกับสาเหตุที่การให้คำสั่งง่ายขึ้นด้วยบรรทัดคำสั่งมากกว่า GUI
Javier Rivera

ขอบคุณ นี่เป็นวิธีเพิ่มเส้นทางสำหรับไลบรารีไบนารีและโมดูล Python หรือไม่ หรือควรเพิ่มโมดูล Python ใน "Source Root"
Karnivaurus

1
ทั้งสอง คุณควรใช้ซอร์สรูทเฉพาะเมื่อคุณต้องการทำการเปลี่ยนแปลงโมดูลนั้น (คุณไม่จำเป็นต้องเพิ่มจากนั้นไปที่รูทซอร์สเพื่อให้สมบูรณ์เอกสารหรือ 'กำลังไปยังแหล่งที่มา' เพื่อทำงาน)
Javier Rivera

5

โปรแกรมเริ่มต้นจากอูบุนตูปล่อยไม่ได้อ่าน .bashrcเป็นอีกทางเลือกหนึ่งในการตั้งค่าพา ธ ใน PyCharm คุณสามารถเริ่ม PyCharm จาก Bash shell เพื่อให้สามารถเข้าถึงตัวแปรสภาพแวดล้อมที่คุณตั้งค่า.bashrcได้


มีวิธีทำให้โปรแกรมอ่านไฟล์. bash_rc เมื่อเริ่มต้นจากตัวเรียกใช้หรือไม่
User007

0

เปิดทางลัดต่อไปนี้ ( Ctrl+ Alt+ S) และคลิก (โครงการ: xxxx) ตอนนี้เลือก (โครงสร้างโครงการ) และเลือก ( /home/yourUser/PycharmProjects/XXXX/venv/bin) และคลิกขวา (ไม่รวม) หรือ ( Alt+ E)

ตอนนี้คลิก (+ เพิ่มรูทเนื้อหา) และดูว่ามันชี้ไปยังตำแหน่งต่อไปนี้ ( /home/ yourUser/PycharmProjects/XXXXX/venv/bin) และคลิกตกลง ตอนนี้ปิด IDE และเปิดอีกครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.