python使用来自两个不同文件的内容嵌套循环



我正在尝试编写一个脚本来对用户凭据进行密码喷洒。它从pass_list文件中获取一个密码,然后尝试user_list中的所有用户名。然后它将使用下一个密码,并尝试所有用户使用它。然而,这个循环不能按我想要的方式工作。

user_list = open('user_list.txt')
pass_list = open('pass_list.txt')
for pass_word in pass_list:
print(pass_word)
for user_name in user_list:
print(user_name)

问题是它只打印用户名和密码一次。它应该为一个密码打印所有用户名。然后,对于第二个密码,它应该再次迭代用户。

文件只能读取一次。使用itertools.product:

with open('user_list.txt') as users:
with open('pass_list.txt') as passwords:
for username, password in itertools.product(users, passwords):
print(username, password)

您的代码中存在一些问题。

  1. 应该是pass_list=open('pass_list.txt','r')#===打开要读取的文件
  2. 应该是print(pass_list.read())#===读取文件

您可以使用print(pass_list.readlines()),它将创建一个列表并将文件中的所有行添加到列表中。

最新更新