Python:将文本列表导出到文本文件

时间:2015-11-26 20:10:34

标签: python

我是Python的新手,我想知道如何保存这个哈希密码列表(存储在变量密码中)

['73868cb1848a216984dca1b6b0ee37bc', '2de9210e9173ca4151bb220a2ded6cdb', '8c064f4067cf0c59c68ec281f5786cb2']

格式为文本文件:

73868cb1848a216984dca1b6b0ee37bc
2de9210e9173ca4151bb220a2ded6cdb
8c064f4067cf0c59c68ec281f5786cb2

目前我可以将其保存到文本文件中,但保存为

['73868cb1848a216984dca1b6b0ee37bc', '2de9210e9173ca4151bb220a2ded6cdb', '8c064f4067cf0c59c68ec281f5786cb2']

保存文件的当前代码:

f = open( 'hash.txt', 'w' )
f.write(repr(passwords) + '\n' )
f.close()

请帮忙:)谢谢

想要保存在文本中的原因是我可以在新脚本中调用该列表来解密它们,但是因为它保存为列表(并作为列表导入),它在列表中创建列表并混乱我的解密脚本。

编辑:谢谢大家的答案:)这是一个巨大的帮助!

4 个答案:

答案 0 :(得分:0)

您可以使用以下代码:

f = open( 'hash.txt', 'w' )
for a in passowrds:
 f.write(a + '\n' ) #you have to pass them as separate variables 
f.close()

每当您必须从列表中取出值时,您可以使用 for循环示例

list = ["cat","dog","lion"]
for animal in list:
   print animal

这将打印列表中的每只动物。您可以使用任何其他变量名称代替动物。

答案 1 :(得分:0)

您应该使用readlines()将文件中的文本传递到列表中并使用该列表,如下所示:

passwords = []

with open('hash.txt', 'r') as f:
    passwords = f.readlines()
f.close() 

如果您遇到'\n',请使用"".join(passwords)

之类的内容

答案 2 :(得分:0)

您可以像这样保存:

with open('hash.txt', 'w') as f:
    f.write('\n'.join(passwords))

这实现了你要做的事情。 (你可以避免使用with语句)

像这样加载:

passwords = []
with open('hash.txt', 'r') as f:
    passwords.extend(f.read().split('\n'))

要使用Python 3,您必须小心将字节首先转换为str ...

电贺。

修改

抱歉,必须是passwords.extend() - 而不是passwords.append()

答案 3 :(得分:0)

要打开:

f = open('hash.txt', 'w')

保存:

f.write(file_path)