gpt4 book ai didi

python - 如何在文本文件中写入多个变量 - Python?

转载 作者:太空宇宙 更新时间:2023-11-04 02:27:53 26 4
gpt4 key购买 nike

我正在尝试创建一个密码生成器。该程序应该生成随 secret 码列表,然后将它们写入 .txt 文件。使用下面的代码,程序只写入最后生成的密码,而不是所有密码。

#!/usr/bin/python3
import random

#The Characters List
Characters = "abcdefghijklmnopqrstuvwxyz!@#$%^&*()_+-=[];'\,./ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"

#Password Generator

#Get the Input form the User
Length = input("Password Length > ")
Length = int(Length)

#Get the Input form the User
PasswordNumber = input("Number of Passwords > ")
PasswordNumber = int(PasswordNumber)

for p in range(PasswordNumber):
Password = ""
for i in range(Length):
Password += random.choice(Characters)
print(Password)

f= open("PasswordList.txt","w+")
f.write(Password)
f.close()

我的结果:

Password Length > 10
Number of Passwords > 5
LgoQ$i%e_O
![i/NxsqQr
n-ydWA/9.5
ksI,jg]#8q
![xrU#=2@#

但是当我打开“PasswordList.txt”时,里面的文本只有:![xrU#=2@#,它生成的最后一个密码。我还希望密码的格式与终端上看到的格式相同:

LgoQ$i%e_O
![i/NxsqQr
n-ydWA/9.5
ksI,jg]#8q
![xrU#=2@#

不是这样的:

LgoQ$i%e_O![i/NxsqQrn-ydWA/9.5ksI,jg]#8q![xrU#=2@#

最佳答案

您只会得到一个密码,因为这是您告诉它要做的:生成并打印出所有密码。一旦它们全部生成,然后您只需将一个密码写入文件。

您需要将该打印语句拉入您的循环中:

f = open("PasswordList.txt","w+")

for p in range(PasswordNumber):
Password = ""
for i in range(Length):
Password += random.choice(Characters)
print(Password)

f.write(Password + "\n")

f.close()

要获得相同的格式,只需在每个 write 中添加一个换行符,或者使用 writeln 方法。

示例输出,包含 10 个长度为 8 的密码:

w@wz+]S2
8t=G#r,F
H$aITs0&
=dMbird6
Y)Dpu]EZ
K\ZDNI*M
L6(2L_7_
VJL3GxF$
.nRt!XIa
=OXP8=aC

关于python - 如何在文本文件中写入多个变量 - Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49909783/

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