我正在从文件中读取值并将它们拆分为参数和值,例如@ id = 7变为param = @id,value = 7.我想将param变量用作字典中的新键。但是,它没有按预期工作。我正在使用以下代码。
list1 = {}
with open('C:/Temp/file1.txt') as f:
lines = f.read().splitlines()
for line in lines:
middle = line.find("=")
param = line[:middle]
value = line[middle+1:]
list1[param] = value
在此代码中,字典键和值变为7。 提前谢谢。
答案 0 :(得分:3)
你必须定义你的字典(d
是一个很好的名字)。你可以这样做:
with open('C:/Temp/file1.txt') as f:#
d = dict(line.strip().split('=', 1) for line in f)
for k,v in d.iteritems():
print("param = {0}, value = {1}".format(k,v))
答案 1 :(得分:2)
如果您将list1定义为dict list1 = {}
,那么您的print语句不正确。
print("param = " + list1[param] + ", value = " + value)
list1[param]
和value
都是7.因为list1[param]
会为您提供内容的价值,而不是它的关键。
然后通过打印来尝试查看字典。
print(list1)
答案 2 :(得分:0)
我知道这不是你要求的,但我建议你看ConfigParser。这是使用配置文件的标准方法。