2014-06-07 65 views
0

只要我嘗試運行一些代碼,IDLE就會保持關閉狀態。我現在卸載了兩次IDLE並重新安裝它。我也測試了其他python文件,以確保它在我的代碼中不是問題。當我試圖運行Pygame時,IDLE關閉

我打開Python的命令行,從idlelib進口空閒寫,打開Python文件,並試圖運行它,並得到這個:

Exception in Tkinter callback 
Traceback (most recent call last): 
    File "C:\Python34\lib\tkinter\__init__.py", line 1487, in __call__ 
    return self.func(*args) 
    File "C:\Python34\lib\idlelib\MultiCall.py", line 179, in handler 
    r = l[i](event) 
    File "C:\Python34\lib\idlelib\ScriptBinding.py", line 127, in run_module_event 

    return self._run_module_event(event) 
    File "C:\Python34\lib\idlelib\ScriptBinding.py", line 141, in _run_module_event 

    code = self.checksyntax(filename) 
    File "C:\Python34\lib\idlelib\ScriptBinding.py", line 102, in checksyntax 
    return compile(source, filename, "exec") 
TypeError: source code string cannot contain null bytes 

我不使用Tkinter的,我使用pygame的在此時此刻。我也知道IDLE是用Tkinter編寫的。 我正在運行Python 3.4 有誰知道這是什麼意思?或者甚至更好,如何讓IDLE再次工作?

UPDATE:它只適用於Pygame的程式

+0

你是如何打開Python的文件並運行它? – martineau

+0

我去文件,打開。選擇我的python文件,然後按F5。另外,我檢查了一個不使用Pygame的文件,它運行良好,可能就是這樣。 –

+0

嘗試以正常方式運行IDLE,即通過開始菜單| Python 3.4 | IDLE(Python GUI)。 – martineau

回答

0

崩潰測試空字節/代碼的文件,請嘗試以下操作:

with open('myfile.py') as f: 
    for i, line in enumerate(f, 1): # lines begin with 1 
     for j, char in enumerate(line): 
      if not char: 
       print('Line %s: col %s' % (i,j)) 
相關問題