สคริปต์ python เก่าไม่ทำงานบน mac - ต้องการ tkinter


1

ฉันกำลังใช้ mojave 10.14.2
ฉันพิมพ์สิ่งนี้ลงใน terminal python -V และรับ
Python 2.7.10

ฉันใช้ซอฟต์แวร์ 3 มิติที่เรียกว่าปัญหาที่ตอบยากและฉันมีสคริปต์ที่มีประโยชน์น่าอัศจรรย์สำหรับสิ่งนี้ที่ฉันซื้อ มีสิ่งหนึ่งที่ทำโดย D3D (Ralph) ที่น่าเศร้าถึงแก่กรรม
สคริปต์ที่เขาเรียกใช้สำหรับ tkinter แต่สำหรับ OS ล่าสุดสคริปต์ล้มเหลวบน imac pro ของฉันเพราะไม่มี tkinter

ถ้าฉันต้องพยายามโหลดไพ ธ อนรุ่นที่ทันสมัยกว่าเช่น 3 อย่างคุณคิดว่าสคริปต์ของฉันที่ต้องใช้ tkinter อาจจะใช้ได้หรือไม่? เอสเธอร์ (ใครไม่รู้เรื่องการเขียนโปรแกรม)


1
@benwiggy คุณแน่ใจเกี่ยวกับสิ่งนี้หรือไม่ ฉันพยายามซ้อมการดำเนินการผลในการimport tkinter as tk ImportError: No module named tkinter
nohillside

2
ใช้ Capital T. ทำงานกับ Mohave และ Mountain Lion
benwiggy

@benwiggy Ahh Python3 ไม่ Wonder :-) ที่เข้มงวดถ้าปัญหานี้เป็นปัญหา OP จะหัน ...
nohillside

คุณสามารถแก้ไขคำถามเพื่อเพิ่มข้อความข้อผิดพลาดที่แน่นอนที่คุณได้รับ?
nohillside

@nohillside - ไม่ใช่ความเข้มงวด แต่เป็นการเปลี่ยนชื่อแพ็กเกจเพื่อให้ได้มาตรฐาน
มาร์ค

คำตอบ:


2

ตรวจสอบให้แน่ใจว่าสคริปต์เรียกระบบไพ ธ อน: /usr/bin/python

ตรวจสอบให้แน่ใจว่านำเข้า Tkinter เป็นTkinter(พร้อมตัวพิมพ์ใหญ่ T) การใช้ตัวพิมพ์เล็กทั้งหมดจะล้มเหลวพร้อมกับข้อความแสดงข้อผิดพลาด

Tkinter มาพร้อมกับ python ใน MacOS เวอร์ชันในตัวดังนั้นจะต้องมีปัญหาอื่น ๆ ใน Mac ของคุณหาก Tkinter ไม่มี 'there'


แม้ว่าโปรดทราบว่ามันเป็นรถpython.org/download/mac/tcltk
Mark

นี่เป็นข้อผิดพลาดที่ฉันได้รับภายในปัญหาที่ตอบยากเมื่อฉันพยายามเรียกใช้สคริปต์: - สคริปต์ Python พยายามใช้ไลบรารี Tkinter Tkinter เข้ากันไม่ได้กับ Poser เวอร์ชัน Mac OS X หากคุณเป็นผู้เขียนสคริปต์โปรดพิจารณาใช้ wxPython แทน Tkinter
user7030480

แม้ว่าฉันจะรู้วิธีการเขียนโค้ด แต่ฉันก็ไม่สามารถแก้ไขสคริปต์ได้ ฉันไม่แน่ใจว่าสามารถแก้ไขได้หรือแม้ว่าจะถูกกฎหมายในการถอดรหัสสคริปต์ของผู้อื่นก็ตาม
user7030480

อา ที่ทำให้การหมุนที่แตกต่างกับมัน ไม่มีอะไรผิดปกติกับสคริปต์ แต่ปัญหาที่ตอบยากคือการห้ามไม่ให้เรียกใช้ด้วยเหตุผลบางอย่าง คุณกำลังบอกว่าสคริปต์ตัวเดิมที่ใช้ในการทำงานกับ Poser รุ่นเดียวกันในเวอร์ชั่น MacOS รุ่นก่อนหน้าหรือไม่?
benwiggy

ไม่ฉันไม่ได้ใช้สคริปต์ในปัญหาที่ตอบยากในปัจจุบันนี้ แต่สคริปต์ tkinter ทั้งหมดของฉันหยุดทำงานหลังจากอัปเกรดระบบปฏิบัติการสำหรับ mac - ฉันลืมว่ามีใครบอกว่าโปรแกรมเมอร์และพวกเขาจำเป็นต้องใช้ wxpython และ tkinter นั้นจะไม่ทำงานอีกต่อไป ฉันไม่ได้ลองใช้สคริปต์ตั้งแต่วันเหล่านั้นจนถึงตอนนี้
user7030480

1

วิธีแก้ปัญหาระยะยาวที่ถูกต้องคือการใช้ python 3 อย่างไรก็ตามสิ่งนี้ต้องการการแปลงของรหัส python จากรุ่น 2 เป็น 3 และนี่ไม่ใช่เรื่องเล็กน้อย

อีกวิธีหนึ่งคือการติดตั้งเวอร์ชันของ python 2 ที่มี Tk งูหลามสามารถติดตั้งในหลายวิธีที่มักจะโดยใช้แพคเกจผู้จัดการเหมือน CONDA, Macports หรือ Homebrew หรือโดยตรงจากpython.org โดยปกติแล้วสำหรับการใช้งานของหลามฉันขอแนะนำให้ใช้ conda เพราะมันจัดการการติดตั้งและการใช้งานแพ็คเกจ python ของบุคคลที่สามอย่างไรก็ตามในกรณีของคุณเมื่อคุณใช้สคริปต์มันอาจจะง่ายกว่าที่จะใช้ python.org

เวอร์ชันล่าสุดสำหรับ python 2 คือ 2.7.15 แต่ตรวจสอบว่า $ PATH ของคุณมี / usr / local / bin ก่อน / usr / bin มิฉะนั้นคุณจะยังมี apple python เหมือนเดิม

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