我是Python新手。我在这里阅读格式为
的文件中的几行 121212-pr-ba-su_re;m1;1;10000
我使用分割功能提取(pr-ba-su)内容。请查看我写的代码。我希望将Prefix-base-suffix作为键存储,并将其值作为ID(在循环的第一行中提取)存储在字典中。 (我想用另一个列表中的值替换键。因此,我正在尝试创建一个字典。)
data ={}
f = open('var_test.txt')
for line in f:
part,m,t,ID = line.split(';',3)
partnumb,r = part.split('_',1)
item,prefix,base,suffix =partnumb.split('-',3)
data[prefix'-'base'-'suffix] =ID
但是我收到语法错误
的错误 data(getattr([prefix'-'base'-'suffix])) =PID
^SyntaxError: invalid syntax
我尝试过使用getattr()函数,并且更新函数但没有用。任何人都可以帮助我吗?非常感谢。
答案 0 :(得分:1)
行data[prefix'-'base'-'suffix] =ID
是您的问题。它不是有效的Python语法。
您可以通过替换此行来获得您期望的结果
data["{}-{}-{}".format(prefix, base, suffix)] = ID