如何在Python中将字符串值指定为空字典?例如,
print hdr
AB_1_15_Oct_2015
hdr = {}
hdr
{}
但我希望AB_1_15_Oct_2015
成为一个空字典。
答案 0 :(得分:1)
通常认为动态分配这样的变量是一种不好的做法。有办法这样做,例如使用exec,但它很危险。 更好的想法是使用字典,因为动态创建键和值很简单。稍微修改现有代码:
hdr = "AB_1_15_Oct_2015"
someDict = {}
someDict[hdr] = {}
然后你可以从顶层访问它
someDict[hdr]['a'] = "spam"
或者通过指定另一个变量来引用它:
hdrDict = someDict[hdr]
hdrDict['b'] = "parrot"
答案 1 :(得分:0)
如果您说想要一个名为" AB_1_15_Oct_2015"的词典。您需要显式定义名为:
的字典AB_1_15_Oct_2015 = {}
如果您的意思是希望能够根据字符串中的值设置变量名称,则无法实现此目的。此外,我无法想出你想要的理由。变量名仅在代码内部使用,因此能够根据日期更改变量名称不会帮助您跟踪特定日期。如果没有关于你想要完成什么的更多信息,很难说出你需要什么,但我认为这样的事情可以实现你想要的:
hdr = {
"identifier": "AB_1_15_Oct_2015",
"data": whatever_you_wanted_to_store
}
标识符以可访问的方式附加到数据的方式。
答案 2 :(得分:0)
花了一段时间才弄明白,但试试这个:
hdr = "AB_1_15_Oct_2015"
print hdr
locals()[hdr] = {}
print AB_1_15_Oct_2015
输出:
AB_1_15_Oct_2015
{}