#Q1024. 海龟漫步(此题无解)

海龟漫步(此题无解)

当前没有测试数据。

题目描述

制作一个海龟漫步的程序,注意这道题目在OJ中无法进行自动评测,但是后续提供了效果参考和代码参考。

要求

编写一段代码,设定特定的步数(如1000步)或时长(如30秒),让小海龟每0.01秒随机往上、下、左、右某一个方向,随机1-3的粗细,随机挑选(random.choice())颜色库中的颜色,移动固定长度的距离(比如20像素)。

效果参考

![](file://2.png?type=additional_file)

代码参考

import turtle
import random
import time

pattern = input('请选择特定步数或特定时间(step: 步, time: 时间): ')
while pattern not in ('step', 'time'):
    pattern = input('请选择特定步数或特定时间(step: 步, time: 时间): ')
if pattern == 'step':
    steps = int(input('请输入步数: '))
    for i in range(steps):
        # 随机粗细, 颜色, 方向
        turtle.pensize(random.randint(1, 3))
        hexcolor = '#' + ''.join([random.choice('0123456789abcdef') for _ in range(6)])
        turtle.pencolor(hexcolor)
        turtle.seth(random.randint(0, 3) *90)
        turtle.fd(20)
        print(f'第{i}步')
        time.sleep(0.01)
    turtle.done()
elif pattern == 'time':
    times = int(input('请输入时间(单位为秒): '))
    init_time = time.time()
    while time.time() - init_time <= times:
        # 随机粗细, 颜色, 方向
        turtle.pensize(random.randint(1, 3))
        hexcolor = '#' + ''.join([random.choice('0123456789abcdef') for _ in range(6)])
        turtle.pencolor(hexcolor)
        turtle.seth(random.randint(0, 3) *90)
        turtle.fd(20)
        print(f'第{time.time() - init_time:.2f}秒')
        time.sleep(0.01)
    turtle.done()