2016-04-13 26 views
0

我想創建詞典鍵和值 但我得到的語法錯誤:通過提供密鑰和變量的值,創建自變量給出語法錯誤

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 

回答

1

您需要將%運算符應用於字符串,而不是disk_to_dm_dict["%s"]的結果。 Python在抱怨你正試圖在這裏分配到something % something_else的結果。

移動運營商[...]支架應用到"%s"字符串:

disk_to_dm_dict["%s" % lun] = dm 
0

在最後一行中有實際的語法錯誤,這裏是固定的變體:

disk_to_dm_dict['%s' % lun] = dm 
0

lun已經是一個字符串,這意味着密鑰是所需的格式。你可以這樣做:

disk_to_dm_dict[lun] = dm 

要直接解決您的代碼嘗試:

disk_to_dm_dict['%s' % lun] = dm 

也就是說移動% lun以鄰近格式字符串。

0

嘗試添加關鍵字:值對使用下面字典片斷

disk_to_dm_dict[lun] = dm 

簡單!