如何在绘图循环中检查输入,输入为flower时终止函数运行
解决方案
你的代码核心问题是没有实际调用input()函数获取用户输入,直接拿内置函数名input和字符串比较,这永远不会成立。以下是修正后的实现:
关键修改点
- 调用
input()函数获取用户输入,存储到变量中再做判断 - 可添加提示文本,让用户清楚输入要求
- 确保每次绘制完一个方块后执行检查逻辑
修正后的完整代码
import random # 假设你已导入random及turtle相关模块 def drawImage(width, height, img_rgb, pixel_lenght, x, y, lvl, answer): start(width, height) for i in range(int(height/pixel_lenght)): for j in range(int(width/pixel_lenght)): c = random.randint(1, lvl) if c == 1: t.color(getPixelColor(x, y, img_rgb)) pixel(pixel_lenght) t.penup() t.forward(pixel_lenght) t.pendown() x += 1 # 修正后的输入检查逻辑 user_input = input("输入内容(输入flower终止):") if user_input.strip().lower() == 'flower': print('great') return nextRow(pixel_lenght, width) x = 0 y += 1
额外优化说明
- 用
strip()去除输入前后空格,lower()统一转为小写,避免用户输入大小写或空格导致判断失效 - 若不需要提示文本,可直接用
user_input = input()
内容的提问来源于stack exchange,提问作者w kooij
相关产品推荐
相关产品推荐

