iAmARoOokIe 2021-04-28 16:10 采纳率: 50%
浏览 49
已采纳

各位大佬,刚开始自学python,我有个while套while的问题请教下

简单的一个求1到输入数的和的问题:
1、题目:
①输入一个数字,计算完成第一轮后,用户通过输入‘y’或者‘n’来决定继续执行还是结束;
②如果输入的不是‘y’或者‘n’就提示输入非法,然后重复要求用户输入y或者n;--到这一步都能实现

2、当前遇到的问题:
①当输入n时,我想结束整个程序,但目前我的代码是输入n时,只能结束判断是否继续的循环,不能结束整个循环;
②当我把break用于结束最上层的while循环时,就变成无论y或者n,都结束整个循环了;

我始终想不出该怎么实现,百度了些资料,可能是我表述的问题,一直搜不出想要的答案,求各位大佬解惑,代码如下:
while 1>0:

    a = 1
    sum = 0
    num = int(input('please input a number:'))
    while a <= num:
        sum = sum + a;
        a += 1;
    print("the sum of 1 to %d is: %d" % (num, sum));

    while True :
        pro = str(input("是否继续? 继续:y,结束:n"))
        if pro == 'y':
            break;
        if pro != 'n' and 'y':
            print('非法命令,请重新输入!')
            continue;
        else:
            print('bye')
        break;

 
  • 写回答

4条回答 默认 最新

  • 专治跌倒扭伤 2021-04-28 16:24
    关注
    
    pro = ''
    while pro != 'n':
        a = 1
        sum = 0
        num = int(input('please input a number:'))
        while a <= num:
            sum = sum + a;
            a += 1;
        print("the sum of 1 to %d is: %d" % (num, sum));
        while True :
            pro = str(input("是否继续? 继续:y,结束:n"))
            if pro == 'y':
                break;
            if pro != 'n' and 'y':
                print('非法命令,请重新输入!')
                continue;
            else:
                print('bye')
            	break;

    你需要一个变量来控制主循环  关注我学python基础

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行