麻烦用python turtle写一下“田秋悦”这三个字,需要运行结果正确的
等会儿给你写,需要点儿时间。
第一个字:
import turtle
def draw_tian():
turtle.speed(speed="slow")
turtle.penup()
turtle.goto(-150, 50)
turtle.pendown()
turtle.right(90)
turtle.forward(40)
turtle.right(90)
turtle.forward(40)
turtle.right(90)
turtle.forward(40)
turtle.right(90)
turtle.forward(40)
turtle.penup()
turtle.goto(-170, 50)
turtle.pendown()
turtle.right(90)
turtle.forward(40)
turtle.penup()
turtle.goto(-150, 30)
turtle.pendown()
turtle.right(90)
turtle.forward(40)
def draw_qiu():
turtle.penup()
turtle.goto(-130, 50)
turtle.pendown()
turtle.right(-30)
turtle.forward(20)
turtle.penup()
turtle.goto(-145, 35)
turtle.pendown()
turtle.right(210)
turtle.forward(20)
turtle.penup()
turtle.goto(-135, 45)
turtle.pendown()
turtle.right(90)
turtle.forward(35)
turtle.penup()
turtle.goto(-135, 35)
turtle.pendown()
turtle.right(35)
turtle.forward(20)
turtle.penup()
turtle.goto(-135, 35)
turtle.pendown()
turtle.right(-70)
turtle.forward(15)
turtle.penup()
turtle.goto(-125, 45)
turtle.pendown()
turtle.right(0)
turtle.forward(10)
turtle.penup()
turtle.goto(-105, 45)
turtle.pendown()
turtle.right(90)
turtle.forward(10)
turtle.penup()
turtle.goto(-115, 50)
turtle.pendown()
turtle.right(-45)
turtle.forward(40)
turtle.penup()
turtle.goto(-118, 36)
turtle.pendown()
turtle.right(-42)
turtle.forward(27)
def draw_yue():
turtle.penup()
turtle.goto(-95, 40)
turtle.pendown()
turtle.right(50)
turtle.forward(10)
turtle.penup()
turtle.goto(-90, 50)
turtle.pendown()
turtle.left(18)
turtle.forward(40)
turtle.penup()
turtle.goto(-90, 36)
turtle.pendown()
turtle.left(48)
turtle.forward(10)
turtle.penup()
turtle.goto(-80, 50)
turtle.pendown()
turtle.left(0)
turtle.forward(10)
turtle.penup()
turtle.goto(-65, 50)
turtle.pendown()
turtle.right(90)
turtle.forward(10)
turtle.penup()
turtle.goto(-80, 40)
turtle.pendown()
turtle.left(43)
turtle.forward(10)
turtle.left(90)
turtle.forward(16)
turtle.left(90)
turtle.forward(10)
turtle.left(90)
turtle.forward(16)
turtle.penup()
turtle.goto(-72, 30)
turtle.pendown()
turtle.left(55)
turtle.forward(25)
turtle.penup()
turtle.goto(-70, 30)
turtle.pendown()
turtle.left(35)
turtle.forward(19)
turtle.left(90)
turtle.forward(8)
turtle.left(90)
turtle.forward(5)
turtle.speed(0) # 设置画笔速度为最快
draw_tian()
draw_qiu()
draw_yue()
turtle.done() # 绘制完成后不退出窗口
import turtle
import requests
from urllib.parse import quote
import re
def obtain_coordinate(target_word):
"""
获取汉字的坐标
"""
url = "https://bihua.bmcx.com/web_system/bmcx_com_www/system/file/bihua/get_0/"
params = {
'font': quote(target_word).replace("%", "").lower(),
'shi_fou_zi_dong': '1',
'cache_sjs1': '20031914',
}
response = requests.get(url, params=params)
content = response.text
content = content.replace('hzbh.main(', '').split(');document.getElementById')[0]
content = content.split('{')[-1].split("}")[0]
pattern = re.compile(r'\w:\[(.+?)\]')
result = re.split(pattern, content)
order_xy_routine = []
words_cnt = 0
for r in result:
sec = re.findall(r'\'.+?\'', r)
if len(sec):
orders = sec[1].split('#')
for order in orders:
order_str = re.findall(r'\(\d+,\d+\)', order)
order_xy = [eval(xy) for xy in order_str]
order_xy_routine.append(order_xy)
words_cnt += 1
print(order_xy_routine)
return order_xy_routine
def draw_words(words, startx, starty):
"""
根据汉字的笔画坐标信息,打印汉字 有笔画的轨迹
"""
offsetX = startx
minX = 1000
maxX = 0
for target_words in words:
turtle.color("black", "black") # 设置画笔颜色
turtle.pu() # 抬起画笔
coordinates = obtain_coordinate(target_words)
for index, coordinate in enumerate(coordinates):
turtle.goto((offsetX + coordinate[0][0]) / 2, -(starty + coordinate[0][1]) / 2)
turtle.pd()
for xy in coordinate:
x, y = xy
minX = min(x, minX)
maxX = max(x, maxX)
turtle.goto((offsetX + x) / 2, -(starty + y) / 2)
turtle.pu()
offsetX += (maxX - minX) + 100
if __name__ == '__main__':
draw_words("田秋悦", -900, -800)
turtle.done() # 保证界面不退出 可点击右上角关闭
from turtle import *
def a(x,y,zi):
pu()
goto(x,y)
pd()
write(zi,font=("Arial", 80, "normal"))
a(-120,0,"田")
a(0,0,"秋")
a(120,0,"悦")
调用 Python 的 turtle.write() 写“田秋悦”这三个字。如对您有帮助,请采纳此回答。谢谢!
这个是基于chatgpt 和本人的调写:
import turtle
canvas = turtle.Screen()
pen = turtle.Turtle()
font_size = 60
x, y = -200, 0
pen.penup()
pen.goto(x, y)
pen.pendown()
pen.write('田', font=('Arial', font_size, 'normal'))
x += font_size
pen.penup()
pen.goto(x, y)
pen.pendown()
pen.write('秋', font=('Arial', font_size, 'normal'))
x += font_size
pen.penup()
pen.goto(x, y)
pen.pendown()
pen.write('悦', font=('Arial', font_size, 'normal'))
pen.hideturtle()
canvas.mainloop()
Python函数
可以借鉴下
https://blog.csdn.net/h15136020513/article/details/124541860
**