从文本文件读取时无法正确编码字符串(编码为sha256 ...)

时间:2019-03-28 21:19:57

标签: python blockchain bitcoin sha256 ecdsa

基本上我想完成的事情(简化...):

我想用自己的密码制作100个类似于以下内容的比特币地址:

password_1 密码_2 password_3

因此,当我在程序中执行此操作时,将得到正确的结果:

def public_key(src):
    privatekey = (int(hashlib.sha256(src).hexdigest(), 16))
    return generate_address(privatekey)
def private_key(src):
    privatekey = hashlib.sha256(src).hexdigest()
    return str(privatekey)
herewego = "password_1".encode('utf-8')
somevariable = public_key(herewego)
print somevariable 

^这可以按预期工作...但是,如果我将“ password_1”放在txt文件中并尝试读取此行,它会给出完全不同的结果吗?

for addr in file:
 address =  addr.encode('utf-8')
 print public_key(address)

因此,问题显然是记事本用ansi或utf-8编码文本文件,这没关系,但是从那里读取的行与python相比看起来与我输入“ ...”时看起来有所不同。在python中?那么要使用什么编码,或者如果不可能的话:记事本的替代方案是什么?顺便说一下,这是用于Windows的Python 2.7。

1 个答案:

答案 0 :(得分:0)

可能会有换行符,您可以尝试

for addr in file:
address =  addr.rstrip('\n').encode('utf-8')
print public_key(address)