[英]Python: Why does NumPy work executed from Command Line (Windows) but not from execution in IDLE?
[英]Why doesn't Turtle work in Linux command line, but from IDLE?
我參加了一個Python小組會議。 在我安裝Linux的筆記本電腦上,我使用通常的命令通過終端執行以下代碼(來自教你的孩子Python的書):
import turtle
t = turtle.Pen()
t.speed(0)
turtle.onscreenclick(t.setpos)
Python3.4 TurtleDraw.py
它應該會打開一個可以輸入鼠標光標的窗口。 相反,窗口會立即出現並消失。 另一個人在他的MacBook上嘗試了類似的東西,結果相同。 但是,他通過IDLE版本運行相同的代碼,它確實按預期工作。
IDLE中有什么東西可以自動與那個Turtle窗口集成嗎? 我認為如果我希望通過Unix命令行正常工作來運行它,可能需要設置環境變量嗎?
在命令行python xyz.py
,告訴Python執行程序,完成后退出並清理。 在你的turtledraw.py
的情況下,它會刪除你所觀察到的海龜屏幕。 要保持屏幕可見,您必須防止程序退出。 一種方法[1]是使用-i
選項: python -i xyz.py
這意味着:“當到達程序結束時,切換到'交互模式'而不是退出”。 一個用途是通過檢查全局變量的值來進行調試。 另一種是與圖形屏幕交互。 無論是否,本書都應該告訴您在從控制台運行時使用-i
。
當您在IDLE中編輯xyz.py
並運行它時,IDLE會模擬python -i xyz.py
:運行xyz.py
,它會將其打開以進行內省或交互。
[1]防止退出的另一種方法是在程序結束時放置一個input()
語句,但這可能不適用於GUI程序。
編輯:我測試了-i
適用於TestDraw.py
上的TestDraw.py
和Python 3.5.0。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.