2011-12-17 5 views
0

Это результат, когда я пытаюсь запустить графику черепахи Python на своем Mac. Кто-нибудь еще видел это. Есть ли предложения по устранению этой проблемы. Спасибо заранее!Неисправность графики черепахи Python на Mac работает OSX 10.6

$ python 
Python 2.6.1 (r261:67515, Aug 2 2010, 20:10:18) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import turtle 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/turtle.py", line 114, in <module> 
    from copy import deepcopy 
    File "/Users/morrison/copy.py", line 3, in <module> 
    Interface summary: 
IndexError: list index out of range 
>>> 

ответ

3

Является ли ваш текущий каталог /Users/morrison/, когда вы запускаете это?

Если это так, проблема заключается в том, что текущий рабочий каталог интерпретатора используется для поиска модулей python во время выполнения в дополнение к стандартным местоположениям. У вас есть файл copy.py в этом каталоге, и он импортируется, когда модуль copy стандартной библиотеки предназначен для модуля turtle.

Это происходит потому, что при запуске интерпретатора python в интерактивном режиме он автоматически добавит текущий рабочий каталог в начало sys.path. (Там есть также эффект, если вы пытаетесь запустить сценарий в этой директории из другой директории. - каталог скрипта будет добавлен к передней sys.path)

Самый простой способ обойти это просто переименовать copy.py в mycopy.py (и не забудьте удалить copy.pyc в этом каталоге).

+0

Также имейте в виду, что 'turtle' в Python использует графический модуль Python' Tkinter', который, в свою очередь, полагается на 'Tcl/Tk'. Apple, поставляемый компанией «Tcl/Tk» 8.5, выпущенный с OS X 10.6, имеет серьезные проблемы, и вы обнаружите, что они вызовут зависание или сбой программ Python 'Tkinter'. Рекомендации здесь (http://www.python.org/download/mac/tcltk/) для IDLE применяются также к использованию черепахи. Я рекомендую установить последнюю версию 64-/32-разрядной версии Python 2.7.x с сайта python.org (http://www.python.org/download/) вместе с последней версией ActiveState Tcl/Tk 8.5 (http: // www. activestate.com/activetcl/downloads) –

+0

Я удалил .py-файл, но не файл .pyc. Спасибо за спасение от этой головной боли! Все так, как должно быть. – ncmathsadist