从文本文件读取时无法正确编码字符串(编码为 sha256...)
Cannot correctly encode string when reading from text file (encoding into sha256...)
基本上我想要完成的(简化...):
我想用我自己的密码创建 100 个比特币地址,看起来有点像:
password_1
password_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。
可能会有换行符,你可以试试
for addr in file:
address = addr.rstrip('\n').encode('utf-8')
print public_key(address)
基本上我想要完成的(简化...):
我想用我自己的密码创建 100 个比特币地址,看起来有点像:
password_1 password_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。
可能会有换行符,你可以试试
for addr in file:
address = addr.rstrip('\n').encode('utf-8')
print public_key(address)