轉自:windows下python3安裝turtle安裝以及解決方案 https://blog.csdn.net/weixin_42429173/article/details/90034524
前言 turtle(海龜庫)是python的一個繪制圖像的函數庫,它就像海龜一樣,給定指令和坐標,在畫布坐標系中一步一步繪制出你想要的圖形,比如小豬佩奇、哆啦A夢、皮卡丘等。
但是在Windows電腦本地直接進行安裝時候會出現錯誤: pip install turtle
會出現錯誤
從瀏覽器下載turtle壓縮包
https://files.pythonhosted.org/packages/ff/f0/21a42e9e424d24bdd0e509d5ed3c7dfb8f47d962d9c044dba903b0b4a26f/turtle-0.0.2.tar.gz
把文件壓縮包進行解壓,然后在對里面setup.py文件進行修改:
修改第40行代碼如下(其實就是增加了括號,python2的語法格式是沒有括號的,但是python3沒有括號就會報錯,就像print函數)
except (ValueError, ve):
然后進入cmd命令窗口進行:再用pip安裝,此處 pip install 后面接的是你修改好的turtle文件夾所在位置
pip install C:\Users\XXX\Desktop\turtle-0.0.2
安裝完成后進入python命令行驗證: import turtle
在桌面右擊新建文本文檔將demon代碼復制進去並保存,修改文件后綴為 .py 文件
cmd命令窗口cd 到文件處執行: python 文件名.py 即可
提供兩個好看的demon:
玫瑰花效果圖:
代碼:
import turtle import time turtle.speed(5) # 設置初始位置 turtle.penup() turtle.left(90) turtle.fd(200) turtle.pendown() turtle.right(90) # 花蕊 turtle.fillcolor("red") turtle.begin_fill() turtle.circle(10, 180) turtle.circle(25, 110) turtle.left(50) turtle.circle(60, 45) turtle.circle(20, 170) turtle.right(24) turtle.fd(30) turtle.left(10) turtle.circle(30, 110) turtle.fd(20) turtle.left(40) turtle.circle(90, 70) turtle.circle(30, 150) turtle.right(30) turtle.fd(15) turtle.circle(80, 90) turtle.left(15) turtle.fd(45) turtle.right(165) turtle.fd(20) turtle.left(155) turtle.circle(150, 80) turtle.left(50) turtle.circle(150, 90) turtle.end_fill() # 花瓣1 turtle.left(150) turtle.circle(-90, 70) turtle.left(20) turtle.circle(75, 105) turtle.setheading(60) turtle.circle(80, 98) turtle.circle(-90, 40) # 花瓣2 turtle.left(180) turtle.circle(90, 40) turtle.circle(-80, 98) turtle.setheading(-83) # 葉子1 turtle.fd(30) turtle.left(90) turtle.fd(25) turtle.left(45) turtle.fillcolor("green") turtle.begin_fill() turtle.circle(-80, 90) turtle.right(90) turtle.circle(-80, 90) turtle.end_fill() turtle.right(135) turtle.fd(60) turtle.left(180) turtle.fd(85) turtle.left(90) turtle.fd(80) # 葉子2 turtle.right(90) turtle.right(45) turtle.fillcolor("green") turtle.begin_fill() turtle.circle(80, 90) turtle.left(90) turtle.circle(80, 90) turtle.end_fill() turtle.left(135) turtle.fd(60) turtle.left(180) turtle.fd(60) turtle.right(90) turtle.circle(200, 60) # 不關閉窗口 turtle.exitonclick()
櫻花樹效果圖:
代碼:
import turtle as T import random import time # 畫櫻花的軀干(60,t) def Tree(branch, t): time.sleep(0.0005) if branch > 3: if 8 <= branch <= 12: if random.randint(0, 2) == 0: t.color('snow') # 白 else: t.color('lightcoral') # 淡珊瑚色 t.pensize(branch / 3) elif branch < 8: if random.randint(0, 1) == 0: t.color('snow') else: t.color('lightcoral') # 淡珊瑚色 t.pensize(branch / 2) else: t.color('sienna') # 赭(zhě)色 t.pensize(branch / 10) # 6 t.forward(branch) a = 1.5 * random.random() t.right(20 * a) b = 1.5 * random.random() Tree(branch - 10 * b, t) t.left(40 * a) Tree(branch - 10 * b, t) t.right(20 * a) t.up() t.backward(branch) t.down() # 掉落的花瓣 def Petal(m, t): for i in range(m): a = 200 - 400 * random.random() b = 10 - 20 * random.random() t.up() t.forward(b) t.left(90) t.forward(a) t.down() t.color('lightcoral') # 淡珊瑚色 t.circle(1) t.up() t.backward(a) t.right(90) t.backward(b) # 繪圖區域 t = T.Turtle() # 畫布大小 w = T.Screen() t.hideturtle() # 隱藏畫筆 t.getscreen().tracer(5, 0) w.screensize(bg='wheat') # wheat小麥 t.left(90) t.up() t.backward(150) t.down() t.color('sienna') # 畫櫻花的軀干 Tree(60, t) # 掉落的花瓣 Petal(200, t) w.exitonclick() # 不關閉窗口