用turtle编写程序模拟随机行走,以坐标(0, 0)为中心来绘制20X20的方格,从中心点开始,模拟画出一条行走路线,同一个点只能走一次,画出这个行走路线,直到无路可走。无路可走包括两种情况:走到边界或者当前位置的四个方向都走过了。
时间: 2023-06-02 15:06:31 浏览: 101
使用Python的turtle模块画图
好的,我可以回答你的问题。以下是用turtle模拟随机行走的程序:
import turtle
import random
# 设置窗口大小和画布大小
turtle.setup(600,600)
turtle.screensize(580,580)
# 坐标系定位到中心点
turtle.setworldcoordinates(-300,-300,300,300)
# 画出20X20的方格
turtle.penup()
turtle.goto(-200,-200)
turtle.pendown()
for _ in range(4):
turtle.forward(400)
turtle.left(90)
# 定义随机行走函数
def random_walk():
directions = [(0,10), (0,-10), (10,0), (-10,0)]
# 随机走一步
x,y = turtle.pos()
while True: # 一直到走到边界或者当前位置的四个方向都走过了
random_direction = random.choice(directions)
new_x, new_y = x + random_direction[0], y + random_direction[1]
if abs(new_x) <= 200 and abs(new_y) <= 200 and (new_x, new_y) not in walked:
break
walked.append((new_x, new_y))
turtle.goto(new_x, new_y)
# 从中心点开始走
turtle.penup()
turtle.goto(0,0)
turtle.pendown()
walked = [(0,0)]
while len(walked) < 400: # 一直走,直到走遍所有格子
random_walk()
turtle.done()
阅读全文