我正在尝试在python中创建字典或列表。
创建字典的常规方法是test = {}
但我不想命名字典test
。
例如,我想将字典命名为我生成的随机哈希。
bagel = "bagels"
h = hashlib.md5()
h.update(bagel.encode('utf-8'))
print(h.hexdigest())
然后我想从h.hexdigest
变量创建字典。
h.hexdigest() = {}
但是这不会用我刚生成的哈希创建字典。
有谁知道我该怎么做?
答案 0 :(得分:1)
如果您可以生成不以数字开头的随机哈希,那么您可能会问这些问题。 因此,以下代码仅在生成的十六进制数字不以数字
开头时才有效bagel = "bagels"
h = hashlib.md5()
h.update(bagel.encode('utf-8'))
temp = h.hexdigest()
exec("{0} = dict()".format(temp))
所以,为了使它适用于任何事情,我建议你添加一个常量字符串,如下所示
bagel = "bagels"
h = hashlib.md5()
h.update(bagel.encode('utf-8'))
temp = h.hexdigest()
exec("const_{0} = dict()".format(temp))
答案 1 :(得分:0)
这对你有帮助。
import hashlib
bagel = "bagels"
h = hashlib.md5()
h.update(bagel.encode('utf-8'))
temp = h.hexdigest()
class YClass( object ):
pass
y= YClass()
setattr( y, temp, {'greet': 'Hello'} )
print(y.__dict__)