【问题标题】:How to make a dialogue box in turtle take an input?如何使乌龟中的对话框接受输入?
【发布时间】:2018-02-28 16:53:16
【问题描述】:
我是 python 和 turtle 的初学者。我想制作一个对话框,询问是或否的问题。虽然我可以让该框弹出,但我将如何对其进行编码以便“否”会关闭海龟程序而“是”会保持它? screen.textinput下面的部分是错误的,但我之前在终端有过,我在上面导入了turtle。
screen = turtle.getscreen()
screen.textinput("Welcome to Bowling!", "Are you readt to bowl?!")
if start.lower() == 'yes':
print("Start!")
else:
print("Goodbye!")
turtle.clear
turtle.bye()
【问题讨论】:
标签:
python
turtle-graphics
【解决方案1】:
这应该让你开始:
import turtle
screen = turtle.Screen()
answer = screen.textinput("Welcome to Bowling!", "Are you ready to bowl?")
if answer is None or answer.lower().startswith('n'):
print("Goodbye!")
screen.clear()
screen.bye()
else:
print("Start!")
要记住的关键是textinput() 返回用户键入的字符串,如果用户点击取消,则返回None。
【解决方案2】:
这是 cdlane 解决方案的替代方案:
import turtle
screen = turtle.Screen()
answer = turtle.simpledialog.askstring("Welcome to Bowling!", "Are you ready to bowl?")
if answer is None or answer.lower().startswith('n'):
print("Goodbye!")
screen.clear()
screen.bye()
else:
print("Start!")
注意:我还没有测试过这段代码,我只是调整了 cdlane 的代码
simpledialog 函数还有其他选项。
整数和浮点数分别有askinteger 和askfloat。我还没有完全理解这些,因为我只是在探索VSCode的代码预测时发现了这个功能