turtle库在Ubuntu系统下的使用问题和解决方法

1.问题:
turtle库在Ubuntu系统下的使用时,在python文件中(或者运行python/python3)导入import turtle时出现崩溃traceback。

解决方法:

在Terminal键入
sudo apt-get install python-tk
安装python-tk,然后再次运行即可。
如果使用的是python3,在Terminal里键入
sudo apt-get install python3_tk
安装python3_tk,然后运行即可。

 2.问题:

Python3安装turtle提示错误:Command "python setup.py egg_info" failed with error code 1

仔细查看安装turtle出错的错误信息,可以看到是个语法错误。

pip在下载turtle 0.0.2包后,会解压到本地再安装,提示的错误在解压的setup.py文件里面,

解决的办法就是:按照给定的链接(我的是这个),把turtle包下载到本地,手动解压,修改setup.py文件再安装。

  1. 打开setup.py文件,第40行修改为
     except (ValueError, ve):

    原来的是Python2的写法,没有括号,加了括号之后Python3就能用了。

  2. pip3安装修:
     pip install -e turtle-0.0.2

    -e后面接上我们修改过setup.py文件的目录。

  3. 这样就搞定了。

另外,如果提示 python-tk 未安装,用apt命令安装就可以了:

sudo apt install python-tk

3.问题:

Python脚本报错AttributeError: ‘module’ object has no attribute’xxx’解决方法

最近在编写Python脚本过程中遇到一个问题比较奇怪:Python脚本完全正常没问题,但执行总报错"AttributeError: 'module' object has no attribute 'xxx'"。这其实是.pyc文件存在问题。

问题定位:
查看import库的源文件,发现源文件存在且没有错误,同时存在源文件的.pyc文件

问题解决方法:

  1. 命名py脚本时,不要与python预留字,模块名等相同。
  2. 删除该库的.pyc文件(因为py脚本每次运行时均会生成.pyc文件;在已经生成.pyc文件的情况下,若代码不更新,运行时依旧会走pyc,所以要删除.pyc文件),重新运行代码;或者找一个可以运行代码的环境,拷贝替换当前机器的.pyc文件即可。

pyc文件介绍

pyc文件,是python编译后的字节码(bytecode)文件。只要你运行了py文件,python编译器就会自动生成一个对应的pyc字节码文件。这个pyc字节码文件,经过python解释器,会生成机器码运行(这也是为什么pyc文件可以跨平台部署,类似于java的跨平台,java中JVM运行的字节码文件)。下次调用直接调用pyc,而不调用py文件。直到你这个py文件有改变。python解释器会检查pyc文件中的生成时间,对比py文件的修改时间,如果py更新,那么就生成新的pyc。

 
posted @ 2018-12-05 10:27  挖坑达人  阅读(55)  评论(0编辑  收藏  举报