import turtle
# 定义圣诞树的绿叶函数
def tree(d, s):
if d <= 0:
return
turtle.forward(s)
tree(d - 1, s * .8)
turtle.right(120)
tree(d - 3, s * .5)
turtle.right(120)
tree(d - 3, s * .5)
turtle.right(120)
turtle.backward(s)
n = 100
""" 设置绘图速度
'fastest' : 0
'fast' : 10
'normal' : 6
'slow' : 3
'slowest' : 1
"""
turtle.speed('fastest') # 设置速度
turtle.left(90)
turtle.forward(3 * n)
turtle.color("orange", "yellow")
turtle.left(126)
# turtle.begin_fill()
for i in range(5):
turtle.forward(n / 5)
turtle.right(144)
turtle.forward(n / 5)
turtle.left(72)
turtle.end_fill()
turtle.right(126)
turtle.color("dark green")
turtle.backward(n * 4.8)
# 执行函数
tree(15, n)
turtle.backward(n / 5)
编辑器run以上代码时,出现 Python Turtle Graphics
窗口,但显示黑屏,且一直抖动(如下图所示,无任何报错提示
最后定位发现,是运行文件的python版本太低。
下载python3.10,并配置环境变量
在终端输入以下命令:
#1.查看当前版本
python --version
#2.进入主目录
cd ~
#3.临时授权
sudo su
#4.打开授权文件(输入下图所示代码)
open .bash_profile
#5.报错文件
source .bash_profile
#确认修改后的版本
python --version
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.10/bin:${PATH}"
export PATH
alias python="/Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10"
此时在命令行执行以下代码,发现秒绘
python3.10 /Users/Cheryl/Documents/python-backend/tree2.py
但通过编辑器执行时,仍然黑屏,可定位是python版本原因,默认使用了Python 2.7.18
,将编辑器中环境变量调整
调整完后,再次运行,发现绘图成功!