在Python中从.txt文件输出sha256哈希

在Python中从.txt文件输出sha256哈希,python,hash,Python,Hash,我已经创建了一个由随机生成的单词组成的文本文件,现在我想编写一个脚本,可以使用该数据从这些单词创建sha256哈希……我更希望哈希也保存为.txt文件,但在我失败的尝试中,我只是尝试将它们打印出来。有什么建议吗 #!usr/bin/python # Filename: doesnt_work import os import hashlib with open("wordlist.txt","r") as f: for line in f: line = line.r

我已经创建了一个由随机生成的单词组成的文本文件,现在我想编写一个脚本,可以使用该数据从这些单词创建sha256哈希……我更希望哈希也保存为.txt文件,但在我失败的尝试中,我只是尝试将它们打印出来。有什么建议吗

#!usr/bin/python
# Filename: doesnt_work

import os
import hashlib

with open("wordlist.txt","r") as f:
    for line in f:
        line = line.rstrip("\n")

        m = sha256(line)
    print(m.hexdigest())

虽然您应该发布异常,但我猜这会解决它

 m = hashlib.sha256(line)
还有一个缩进问题

#!usr/bin/python
# Filename: doesnt_work

import os
import hashlib

with open("wl.txt","r") as f:
    for line in f.readlines():
        line = line.rstrip("\n")

        m = hashlib.sha256(line)
        print(m.hexdigest())

虽然您应该发布异常,但我猜这会解决它

 m = hashlib.sha256(line)
还有一个缩进问题

#!usr/bin/python
# Filename: doesnt_work

import os
import hashlib

with open("wl.txt","r") as f:
    for line in f.readlines():
        line = line.rstrip("\n")

        m = hashlib.sha256(line)
        print(m.hexdigest())

你应该总是发布你收到的异常。这里没有通灵的人。对不起,很好的观点。。第一次问问题。我得到了一个散列的返回值(ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb),它甚至不是第一个单词的正确sha256散列。谢谢。你是在听了我下面的回答后得到的吗?请至少发布几行单词列表文件和你得到的哈希值。啊,啊…在这个框中不能将它们分开…这里是另一个尝试…用#####:Kw)9Z,h4分开你应该始终发布你得到的异常。这里没有通灵的人。对不起,很好的观点。。第一次问问题。我得到了一个散列的返回值(ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb),它甚至不是第一个单词的正确sha256散列。谢谢。你在听我下面的回答后就明白了?请至少发布几行单词列表文件和你得到的哈希值。啊…在这个框中无法将它们分开…这里是另一个尝试…用####:Kw)9Z,h4分隔感谢你的帮助…好吧…最初它给了我一个哈希值,这个哈希值对于.txt文件中的第一个单词都不正确。(在我解决这个问题时,文件中有10个单词…)添加了您的建议,现在它跳过了python shell中的一行,但没有输出。您需要以某种方式阅读
f
。请尝试对f.readlines()中的行执行
。@user3157868确保@Bibhas的代码实际打开了正确的文件。在你的问题中,你做了
open(“wordlist.txt”)
,而在Bibhas的回答中,他做了
open('wl.txt')
好的……进步!我输入了您对f.readkines()的建议:…为语法添加了冒号。。。现在我得到了错误“m=hashlib.sha256(line)TypeError:Unicode对象必须在哈希之前进行编码我也会处理它并检查您的建议。THANKSO.K…做了以下更改:m=hashlib.sha256((line).encode('utf-8'))…它现在给我的是.txt文件中最后一个单词的正确哈希值,而不是所有的5个单词谢谢你的帮助…好吧…最初它给我的是1个哈希值,它甚至对.txt文件中的第一个单词都不正确。(当我解决这个问题时,文件中有10个单词)添加了您的建议,现在它跳过python shell中的一行,但没有输出。您需要以某种方式读取
f
。请改为在f.readlines()中对行执行
。@user3157868确保@Bibhas的代码实际打开了正确的文件。在您的问题中,您确实打开了
文件(“wordlist.txt”)
在Bibhas的回答中,他确实
open('wl.txt')
O.K…进步!我输入了你对f.readkins()的建议:…为语法添加了冒号…现在我得到错误“m=hashlib.sha256(line)TypeError:在哈希之前必须对Unicode对象进行编码我也会处理并检查你的建议。THANKSO.K…做了以下更改:m=hashlib.sha256((line.encode('utf-8'))。。。它现在为我提供了.txt文件中最后一个单词的正确哈希值,而不是全部5个单词