2017-05-29 32 views
1

我有一個功能,即必須是蟒2.6符合:格式和線內迴路的Python 2.6

def find(entity, **kwargs): 
    return instance.search(
     set(), 
     {'search': '{0}="{1}"'.format(key, kwargs[key]) for key in kwargs} 
    ) 

然而蟒2.6完整性檢查在字符位置59,這是從環路的「for」失敗。 python 2.6中的內聯循環是否正常?

+0

是真的,那是重複的。因爲我不知道問題出在哪裏,所以我可能很難找到那個問題。 – Mosfet

回答

1

詞典理解是在Python 2.7中引入的。請參閱PEP 274 -- Dict Comprehensions

可以代替構建字典通過對鍵和值的生成器表達式調用dict

def find(entity, **kwargs): 
    return instance.search(
     set(), 
     dict(('search', '{0}="{1}"'.format(key, kwargs[key])) for key in kwargs) 
    ) 

但是請注意,你的字典將只包含一個鍵和值,因爲search是唯一的關鍵,你已經提供了,並且它在整個世代都沒有改變。進出口。

+0

thx!那就是訣竅! – Mosfet