我试图通过提供变量的键和值来创建字典, 但我得到语法错误:
disk_to_dm_dict = {}
for line in dm_name:
match = re.search(lun_reg,line)
if match:
lun=match.group(6)
dm=match.group(8)
print lun
print dm
#Create Dictionary with key= LUN and Value=dm
disk_to_dm_dict['%s']%lun = dm
但我收到错误
File "read_lun.py", line 42
disk_to_dm_dict["%s"]%lun = dm
SyntaxError: can't assign to operator
答案 0 :(得分:1)
您需要将%
运算符应用于字符串,而不是disk_to_dm_dict["%s"]
的结果。 Python抱怨你试图在这里分配something % something_else
的结果。
将操作符移到 [...]
括号内以应用于"%s"
字符串:
disk_to_dm_dict["%s" % lun] = dm
答案 1 :(得分:0)
你在最后一行有一个实际的语法错误,这里是固定的变体:
disk_to_dm_dict['%s' % lun] = dm
答案 2 :(得分:0)
lun
已经是一个字符串,这意味着密钥是所需的格式。你可以这样做:
disk_to_dm_dict[lun] = dm
要直接修复您的代码,请尝试:
disk_to_dm_dict['%s' % lun] = dm
即移动% lun
与格式字符串相邻。
答案 3 :(得分:0)
尝试使用以下代码段
将key:value对添加到字典中disk_to_dm_dict[lun] = dm
简单!