gpt4 book ai didi

python - 传递列表时出现 TypeError (Python)

转载 作者:行者123 更新时间:2023-11-28 22:00:36 26 4
gpt4 key购买 nike

代码:

import itertools
import string
import hashlib

def hash_f(x):
h = hashlib.md5(x)
return int(h.hexdigest(),base=16)


value = raw_input("Enter a value: ")
oneChar = [map(''.join, itertools.product(string.ascii_lowercase, repeat=1))]
twoChar = [map(''.join, itertools.product(string.ascii_lowercase, repeat=2))]
threeChar = [map(''.join, itertools.product(string.ascii_lowercase, repeat=3))]
possibleValues = oneChar + twoChar + threeChar

hashed_list = [int(hashlib.md5(x).hexdigest(), base=16) for x in possibleValues]

for x in hashed_list:
if hash_f(value) == x:
print "MATCH"

当我尝试运行此代码时出现的错误如下:

Traceback (most recent call last):
File "hash.py", line 18, in <module>
hashed_list = [int(hashlib.md5(x).hexdigest(), base=16) for x in possibleValues]
TypeError: must be string or buffer, not list

在我的脑海里仔细想想,我能看到的唯一问题是 hashlib 的错误,但由于我正在循环遍历 possibleValues 中的每个单独值,难道不应该否定这个问题吗?

非常感谢所有帮助!

最佳答案

map 的输出已经是一个列表,你的意思是使用:

oneChar = map(''.join, itertools.product(string.ascii_lowercase, repeat=1))
twoChar = map(''.join, itertools.product(string.ascii_lowercase, repeat=2))
threeChar = map(''.join, itertools.product(string.ascii_lowercase, repeat=3))

关于python - 传递列表时出现 TypeError (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14573655/

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