buhuiyouyngdeyu 2024-11-16 13:50 采纳率: 100%
浏览 3
已结题

为什么我的active=False跳不出while循环?

img


我的while循环跳不出去,使用了active=False但是输入quit后面还是会继续进行下去(●—●)

  • 写回答

2条回答 默认 最新

  • a5156520 2024-11-16 14:10
    关注

    把第9行while循环的循环条件改为active==True,或者active都可以。

    修改如下:

    file_path='moon.txt'
    with open(file_path, 'w', encoding='utf-8') as file:
        a=input('请输入你的个人信息如(姓名,年龄,性别):')
        file.write(a)
    
    file_path='guest_book.txt'
    active=True
    # 如果要通过标志active的真假值判断是否退出循环,则需要将while循环的循环条件修改一下,例如active==True
    # 使用while True,是一个死循环,除非循环内部,使用break或其他方式退出,否则会一直循环执行循环体
    while active==True: 
        guest=input('请输入你的名字,或输入quit进行退出:')
        if guest=='quit':
            active=False # 如果不改变while循环的循环条件,则可以在这里直接使用break退出循环
            #break
        else:
            with open(file_path, 'w', encoding='utf-8') as file:
                file.write(guest)
    
    
    

    img

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

报告相同问题?

问题事件

  • 系统已结题 11月24日
  • 已采纳回答 11月16日
  • 创建了问题 11月16日