python - break 不会中断 while 循环。为什么?

python - break 不会中断 while 循环。为什么?

使用break语句时,它只会退出当前所在的内循环,这意味着它仍然会循环外循环。解决此问题的常用方法是将嵌套循环重构为函数并使用return语句退出代码。

另一种方法是添加一些continue语句以避免达到第二个break并且仅在退出内部循环时达到它。像这样的东西:

def check():

users = open('student.txt').read().split('\n')

for i in range(len(users)):

users[i] = users[i].split(',')

while True:

username = str(input('Username: '))

password = str(input('Password: '))

for user in users:

uname = user[3]

pword = user[4]

if uname == username and pword == password:

print('Hello ' + user[0] + '.')

print('You are logged in as: ' + user[3] + '.')

break

else:

print('Wrong username/password.')

print('Try again!\n\n')

# Continue if the inner loop wasn't broken.

continue

# Inner loop was broken, break the outer.

break

相关推荐

365betapp投注 荣耀400系列新机服务权益一图懂

荣耀400系列新机服务权益一图懂

📅 06-28 👁️ 5156
365betapp投注 新西兰男篮(New Zealand)

新西兰男篮(New Zealand)

📅 06-28 👁️ 4620