turtle:一个基于 Tkinter 的 Python turtle 图形模块。官方文档解释为:“ turtle 图形是向孩子们介绍编程的一种流行方式。它是 Wally Feurzeig 、Seymour Papert 和 Cynthia Solomon 在 1967 年开发的原始徽标编程语言的一部分。”
但是在 PyCharm 中由于存在冲突,导致正常 import 的 turtle 无法使用,这里,介绍在 Ubuntu 系统中解决该问题的方法。
目录
一、原因
二、解决
PyCharm 和 turtle 库有冲突,不能自己识别出 turtle 中的方法。
1. 导入模块
# 导入模块
import turtle
2. 鼠标放置在 turtle 上,同时按住 Ctrl 键,出现如下图1 所示消息,鼠标点击 turtle ,进入 turtle.py 文件
3. 进入 turtle.py 文件后,使用快捷键 Ctrl + R 查找 “__all__”字符串,这里记录了该模块可使用的全部方法
__all__ = (_tg_classes + _tg_screen_functions + _tg_turtle_functions +
_tg_utilities + ['Terminator']) # + _math_functions)
问题就出在这里,解决方法就是将这部分代码替换为以下内容:
__all__ = ['ScrolledCanvas', 'TurtleScreen', 'Screen', 'RawTurtle', 'Turtle', 'RawPen', 'Pen', 'Shape', 'Vec2D', 'back',
'backward', 'begin_fill', 'begin_poly', 'bk', 'addshape', 'bgcolor', 'bgpic', 'bye', 'clearscreen',
'colormode', 'delay', 'exitonclick', 'getcanvas', 'getshapes', 'listen', 'mainloop', 'mode', 'numinput',
'onkey', 'onkeypress', 'onkeyrelease', 'onscreenclick', 'ontimer', 'register_shape', 'resetscreen',
'screensize', 'setup', 'Terminator', 'setworldcoordinates', 'textinput', 'title', 'tracer', 'turtles',
'update', 'window_height', 'window_width', 'write_docstringdict', 'done', 'circle', 'clear', 'clearstamp',
'clearstamps', 'clone', 'color', 'degrees', 'distance', 'dot', 'down', 'end_fill', 'end_poly', 'fd',
'fillcolor', 'filling', 'forward', 'get_poly', 'getpen', 'getscreen', 'get_shapepoly', 'getturtle', 'goto',
'heading', 'hideturtle', 'home', 'ht', 'isdown', 'isvisible', 'left', 'lt', 'onclick', 'ondrag', 'onrelease',
'pd', 'pen', 'pencolor', 'pendown', 'pensize', 'penup', 'pos', 'position', 'pu', 'radians', 'right', 'reset',
'resizemode', 'rt', 'seth', 'setheading', 'setpos', 'setposition', 'settiltangle', 'setundobuffer', 'setx',
'sety', 'shape', 'shapesize', 'shapetransform', 'shearfactor', 'showturtle', 'speed', 'st', 'stamp', 'tilt',
'tiltangle', 'towards', 'turtlesize', 'undo', 'undobufferentries', 'up', 'width', 'write', 'xcor', 'ycor']
这里包含直接用 list 的方式穷举了 turtle 模块可使用的全部方法。但是在试图修改代码过程中,会遇到显示文件不可修改提示,这时我们需要在系统中找到对应文件进行修改。
4. 如下图2 中,鼠标右击 turtle.py ,选择 Cope path... 命令
5. 找到该文件,并将其复制到主目录文件夹下(~$),修改属性权限,如下图3
6. 按 3. 说明修改文件,并保存,然后执行如下命令,调用管理员权限将修改后的文件放回到原来位置
~$ sudo mv turtle.py /usr/lib/python3.6
然后问题就完美解决了。