2013-06-20 25 views
0

我在Jython的新手,請找我的性學習的環境細節在Jython腳本接受用戶輸入的問題

的Jython:Jython的2.5.4rc1(2.5:723492dbab02,2013年2月8日,9點五十分55秒) JAVA :[爪哇熱點(TM)64位服務器VM公司(Oracle Corporation)]上java1.7.0_01 PYTHON:Python之3.3 IDE:上的PyDev朱諾服務版本1 操作系統:Windows 7中,64位

雖然試圖運行我從互聯網上獲取的程序。 此程序期望從終端用戶(C,M或X)一些投入類似:

enterPlayer = input("Would you like to create a team or manage an existing team?\n (Enter 'C' for create, 'M' for manage, 'X' to exit) ") 如果運行此程序與Python(使用的PyDev)此workks細。但是,如果將其作爲jython運行,則程序崩潰,如果我打印enterPlayer變量(存儲來自用戶的輸入的可變參數),則該值顯示爲"__PYCLASSPATH__/"

也就是說,如果我選擇python,它會按預期工作,否則(jython)它會中斷。

請幫

回答

0

inputraw_input = Python 3.xPython 2.x

如果你既想在Python 3.x和Python的2.X(Jython的2.X)運行您的程序,將在以下幾行程序的開始。

import sys 
if sys.hexversion < 0x3000000: 
    input = raw_input 
+0

感謝您的快速回答,我嘗試了與您建議的相同的方式。現在它的工作很好。謝謝。但我的編輯器(pydev)給我一個錯誤,說raw_input是一個未定義的變量。有沒有辦法糾正這個問題? – kallada

+0

將'raw_input'替換爲'eval('raw_input')'。這會讓pydev高興,但不好。也許有一些編輯器設置壓制變量檢查...(猜) – falsetru

+0

再次感謝,它的工作(與您的警告)。 Aslo嘗試使用選項窗口 - >首選項 - > PyDev - >編輯器 - >代碼分析 - >未定義 - >從導入未定義變量 - >忽略,但這並不幫助我刪除錯誤標記。任何方式都會嘗試找出它。 – kallada