物语18 2023-03-17 22:49 采纳率: 71.4%
浏览 9
已结题

Python中的if语句未执行

为什么我这里的if语句不执行呀!

userAll = []
paswdAll = []
user = input('请输入您的用户名:')
pwd = input('请输入您的密码:')
for item in userAll:
    if item == user:
        i = 0
        for item1 in paswdAll:
            if item1 == pwd and paswdAll[i] == item1:
                print('登录成功!!')
                i += 1
            else:
                print('密码错误')
    else:
        print('该用户不存在,请先注册!')
        user = input('请输入您的用户名:')
        pwd = input('请输入您的密码:')
        userAll.append(user)
        paswdAll.append(pwd)
```python


```

  • 写回答

4条回答 默认 最新

  • 追cium 2023-03-17 23:09
    关注

    参考GPT和自己的思路:

    根据你所提供的代码,if语句不会执行的原因是,userAll和paswdAll都是空列表,遍历这两个列表时,循环体不会执行。因此,当用户输入用户名和密码后,即使这些信息是正确的,也不可能在userAll和paswdAll中找到匹配项,进而导致if语句不执行。你需要在代码中添加逻辑,将用户名和密码添加到userAll和paswdAll中,以便后续可以进行匹配。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • weixin_48483942 2023-03-17 23:06
    关注
    
    根据代码,可能出现if语句不执行的情况有两种可能:
    
      1.userAll 和 paswdAll 列表为空,不满足 if item == user: 和 if item1 == pwd and paswdAll[i] == item1: 这两个条件,从而导致if语句没有执行。
    
      2.当前用户信息不存在于 userAll 中时,程序会进入 else 分支,并将用户信息添加至 userAll 和 paswdAll 中,此时并没有对新添加的用户进行验证,也就是说没有执行其中的if语句。
    
    建议您检查一下 userAll 和 paswdAll 列表中是否有数据,并仔细检查逻辑是否正确。
    
    评论
  • threenewbee 2023-03-17 23:06
    关注

    你要干什么,缩进对不对,条件对不对

    评论
  • CSDN-Ada助手 CSDN-AI 官方账号 2023-03-19 03:21
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月5日
  • 已采纳回答 3月28日
  • 创建了问题 3月17日

悬赏问题

  • ¥20 win10商店接入问题
  • ¥15 java 这种树形框吗
  • ¥40 找同学帮敲Python代码
  • ¥15 MYSQL 订单的商品明细重复计算问题
  • ¥15 微信实时共享位置修改
  • ¥100 TG的session协议号转成直登号号后客户端登录几分钟后自动退出设备
  • ¥50 共模反馈回路的小信号增益
  • ¥15 arduino ssd1306函数与tone函数放歌代码不兼容问题
  • ¥70 0.96版本hbase的row_key里含有双引号,无法deleteall
  • ¥15 诊断性META分析合并效能的检验