纵有千古 发表于 2020-4-3 17:06:35

python if或者while循环

有一个问题想请教各位大神,本人才学习python1个多月实在有很多困惑希望大家帮帮忙。我想问的是假如说我想让玩家自己输入想要的表格大小:size=int(input('please enter a number between 1 and 10 here: ')),如果玩家输入的值大于十或小于1时就告诉玩家这一个无效的输入并且弹出要求玩家继续输入一个1到10之间的数,这个循环终止要么是玩家自己选择退出或者玩家输入了一个有效的数字。请问这样的一个循环怎么样才能实现(最好能给我用程序举个例子)。谢谢各位。

qiuyouzhi 发表于 2020-4-3 17:12:45

本帖最后由 qiuyouzhi 于 2020-4-3 17:26 编辑

size = 0
while size > 10 and size < 1:
    size = input("请输入表格大小(Q!退出):")
    if size = 'Q!':
      break
    if not size.isdigit():
      print("输入错误!")
      continue
    size = int(size)

永恒的蓝色梦想 发表于 2020-4-3 17:18:51

if 不是循环

sunrise085 发表于 2020-4-3 17:19:35

while True:
    flag=input("退出吗?输入'Y'退出,其他字符继续,请输入:")
    if flag=='Y':
      print('好的,再见,下次在玩~~')
      break
    num=input('please enter a number between 1 and 10 here: ')
    if not num.isdecimal():
      print("输入错误!输入的不是数字")
      continue
    size=int(num)
    if size<1 or size>10:
      print("输入超出范围!")
    else:
      print("输入正确,size=%d"%size)
      break

纵有千古 发表于 2020-4-3 18:58:29

永恒的蓝色梦想 发表于 2020-4-3 17:18
if 不是循环

for才是是吧

纵有千古 发表于 2020-4-3 18:59:59

sunrise085 发表于 2020-4-3 17:19


太感谢了,这里有一个函数我没学过 num.isdecimal() 可以解释一下吗?

永恒的蓝色梦想 发表于 2020-4-3 19:05:34

纵有千古 发表于 2020-4-3 18:58
for才是是吧

是的,

sunrise085 发表于 2020-4-3 19:35:36

纵有千古 发表于 2020-4-3 18:59
太感谢了,这里有一个函数我没学过 num.isdecimal() 可以解释一下吗?

看看这个帖子
页: [1]
查看完整版本: python if或者while循环