画出宝音这两个字
import turtle
def draw_bao():
turtle.penup()
turtle.goto(-150, 0)
turtle.pendown()
# 宝字部分
turtle.forward(100)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.penup()
turtle.goto(-150, -50)
turtle.pendown()
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
def draw_yin():
turtle.penup()
turtle.goto(0, 0)
turtle.pendown()
# 音字部分
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
后面不知道该咋写了
没用GPT,自己手动画的,先给你一个宝字的代码,音字的代码我还在画。
import turtle
def draw_bao():
turtle.penup()
turtle.goto(-150, 50)
turtle.pendown()
turtle.right(45)
turtle.forward(10)
turtle.penup()
turtle.goto(-180, 30)
turtle.pendown()
turtle.left(95)
turtle.forward(10)
turtle.right(50)
turtle.forward(60)
turtle.right(95)
turtle.forward(10)
turtle.penup()
turtle.goto(-165, 25)
turtle.pendown()
turtle.right(265)
turtle.forward(36)
turtle.penup()
turtle.goto(-160, 10)
turtle.pendown()
turtle.right(0)
turtle.forward(28)
turtle.penup()
turtle.goto(-167, -5)
turtle.pendown()
turtle.right(0)
turtle.forward(45)
turtle.penup()
turtle.goto(-147, 25)
turtle.pendown()
turtle.right(90)
turtle.forward(30)
turtle.penup()
turtle.goto(-141, 3)
turtle.pendown()
turtle.left(45)
turtle.forward(10)
turtle.speed(0) # 设置画笔速度为最快
draw_bao()
#draw_yin()
turtle.done() # 绘制完成后不退出窗口
运行结果如下:
要使用python中的库绘制出宝音这两个字 首先你需要知道这两个字的画笔坐标,可以通过爬虫获取,然后再绘制。实现代码如下,望采纳:
import turtle
import requests
from urllib.parse import quote
import re
# 这个函数是爬虫获取汉字的笔画坐标信息
def obtain_coordinate(target_word): # 获取汉字的坐标
"""
获取汉字的坐标
:param target_word:
:return:
"""
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(target_words, startx, starty, lineNum=1): # 画汉字
"""
画汉字
:param target_words:
:param startx:
:param starty:
:param lineNum:
:return:
"""
turtle.color("black", "black") # 设置画笔颜色
turtle.pu() # 抬起画笔
coordinates = obtain_coordinate(target_words)
for index, coordinate in enumerate(coordinates):
turtle.goto((startx + coordinate[0][0])/2, -(starty + coordinate[0][1])/2)
turtle.pd()
for xy in coordinate:
x,y=xy
turtle.goto((startx+x)/2, -(starty+y)/2)
turtle.pu()
if __name__ == '__main__':
# 画汉字
draw_words("宝", -900, 0)
draw_words("音", 0, 0)
turtle.done()
实现结果:
画出“宝音”两个字的代码示例:
turtle.penup()
turtle.setpos(-200, 0)
turtle.pendown()
turtle.pensize(5)
turtle.pencolor('black')
turtle.bgcolor('white')
turtle.left(30)
turtle.forward(100)
turtle.right(60)
turtle.forward(100)
turtle.right(180)
turtle.forward(50)
turtle.left(60)
turtle.forward(50)
turtle.right(180)
turtle.forward(50)
turtle.left(30)
turtle.forward(50)
turtle.penup()
turtle.setpos(-50, 0)
turtle.pendown()
turtle.left(90)
turtle.forward(100)
turtle.right(180)
turtle.forward(100)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(100)
turtle.hideturtle()
turtle.done()
import turtle
turtle.setup(width=800, height=600)
turtle.bgcolor("black")
turtle.color("white")
turtle.pensize(5)
turtle.hideturtle()
turtle.penup()
turtle.goto(-100, 0)
turtle.pendown()
# 绘制“宝”字
turtle.begin_fill()
turtle.left(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(20)
turtle.right(90)
turtle.forward(60)
turtle.right(90)
turtle.forward(20)
turtle.end_fill()
# 绘制“音”字
turtle.penup()
turtle.goto(0, 0)
turtle.pendown()
turtle.begin_fill()
turtle.left(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(20)
turtle.right(135)
turtle.forward(25)
turtle.left(135)
turtle.forward(75)
turtle.right(135)
turtle.forward(25)
turtle.left(135)
turtle.forward(20)
turtle.end_fill()
turtle.done()
该回答引用ChatGPTpython
import turtle
def draw_bao():
turtle.penup()
turtle.goto(-150, 0)
turtle.pendown()
turtle.forward(100)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.penup()
turtle.goto(-150, -50)
turtle.pendown()
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
def draw_yin():
turtle.penup()
turtle.goto(0, 0)
turtle.pendown()
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.penup()
turtle.goto(100, 0)
turtle.pendown()
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.right(90)
turtle.forward(50)
turtle.speed(0) # 设置画笔速度为最快
draw_bao()
draw_yin()
turtle.done() # 绘制完成后不退出窗口