โดยพื้นฐานจากชื่อและรูปภาพด้านล่างฉันได้ติดตั้งแล้ว พีซีเรียล และใช้งานได้ในเทอร์มินัล Python แต่ไม่ใช่ในสคริปต์
ฉันได้ทำ pip3 ติดตั้ง pyserialและยังได้พยายาม pip ติดตั้ง pyserial และ python3 -m pip ติดตั้ง pyserialซึ่งส่งคืนว่าฉันได้ติดตั้งแพ็คเกจแล้ว
เมื่อฉันใช้ หลาม3ป้อนเทอร์มินัล Python และป้อน นำเข้าซีเรียล ไม่มีข้อผิดพลาด เมื่อฉันมีสคริปต์ที่ใช้ นำเข้า pyserial และเรียกใช้โดยใช้ python3 ./serial_test.pyมันทำให้ข้อผิดพลาด
ทำไมคนหนึ่งถึงโยนข้อผิดพลาดและอีกคนหนึ่งไม่? และฉันจะแก้ไขได้อย่างไร
นี่คือภาพหน้าจอของเทอร์มินัลของฉัน:

สคริปต์ไพ ธ อนของฉันไม่ว่าสคริปต์จะใช้ไฟล์ อนุกรม ห้องสมุดส่งข้อผิดพลาด:

แก้ไข 1: สิ่งหนึ่งที่ฉันลืมพูดถึงก็คือเมื่อฉันทำ pip3 -- รุ่น มันแสดงให้เห็น:
pip 22.0.3 จาก /usr/local/lib/python3.8/dist-packages/pip (python 3.8)
แทน:
/usr/lib/python3...
เช่น ระบุไว้ที่นี่แม้ว่าสิ่งนี้จะยังไม่สามารถอธิบายความแตกต่างของรหัสในเทอร์มินัลได้
บางทีวิธีแก้ปัญหาคือการติดตั้งโดยใช้ pip สำหรับ /usr/lib/python3แต่ฉันไม่แน่ใจว่าจะทำอย่างไร
แก้ไข 2: เมื่อฉันพิจารณาเพิ่มเติม ฉันจะอัปเดตผลการวิจัยของฉัน เมื่อฉันทำ python3 อยู่ที่ไหน, ฉันเข้าใจ:
python3: /usr/bin/python3 /usr/bin/python3.8 /usr/bin/python3.8-config /usr/lib/python3 /usr/lib/python3.8 /usr/lib/python3.9 /อื่นๆ /python3 /etc/python3.8 /usr/local/lib/python3.8 /usr/include/python3.8 /usr/share/python3 /usr/share/man/man1/python3.1.gz
ฉันไม่แน่ใจว่าโปรแกรมทำงานอย่างไรในบรรทัดคำสั่ง ดังนั้นฉันจึงไม่แน่ใจว่าเหตุใดจึงมีหลายตำแหน่งสำหรับ หลาม3แต่บางทีมันอาจจะอธิบายปัญหา
แก้ไข 3: ซึ่ง python3 แสดง:
/usr/bin/python3
และ ซึ่ง pip3 แสดง:
/usr/local/bin/pip3