gpt4 book ai didi

Python 嵌套 for 循环不会在第一个循环的第二次迭代中执行第二个 for 循环

转载 作者:行者123 更新时间:2023-11-28 22:41:38 25 4
gpt4 key购买 nike

在我的 python 类中,我创建了一个嵌套的 for 循环,脚本和输出应该非常简单。不直接的是我该如何解决这个问题!!

我在谷歌上搜索了几个小时,查看其他嵌套 for 循环的示例,但没有找到任何与我的类似的内容来帮助我理解这个问题。

这是整个脚本:

LIST = "list.txt"
USERNAME = "users.txt"

# Open the files to read from

listtxt = open(LIST,"r")
userstxt = open(USERNAME,"r")

# For each user in users.txt
for USER in userstxt:
print ("Started new user %s" % USER)

for PASSWD in listtxt:
print USER + ", " + PASSWD

输出

Started new user user1

user1
, pass1

user1
, pass2

user1
, pass3

user1
, pass4

user1
, pass5

Started new user user2

Started new user user3

Started new user user4

Started new user user5

你已经看到问题了吗?问题是它正确地遍历了第一个用户,但是对于所有后续用户,它只通过了第一个(用户)循环,但没有执行密码循环

最佳答案

您在外循环的第一次迭代中耗尽了文件。您可能应该将 list.txt 文件读入一个列表,然后遍历该列表。您可能还想在使用它们之前将换行符从行中删除。

users_filepath = 'users.txt'
passwords_filepath = 'list.txt'

with open(users_filepath, 'r') as users_file:
users = [line.strip() for line in users_file]

with open(passwords_filepath, 'r') as password_file:
passwords = [line.strip() for line in password_file]

for user in users:
print "Started new user {user}".format(user=user)

for password in passwords:
print "{user}, {password}".format(user=user, password=password)

关于Python 嵌套 for 循环不会在第一个循环的第二次迭代中执行第二个 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32387555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com