讓說我有一個包含字符串列表:TA,FA,BA,UT,讓撥打我們的名單是some_list = ['ta', 'fa', 'ba', 'ut']
的Python:列表理解在unicode validaton
我想要做的是,在僞代碼:
for x in some_list:
if unicode(x, 'utf-8') == another_unicoded_string:
do something:
但我想這樣做,使用列表中理解的Python的方式:
所以這是我如何做,但這不是真正的工作:
if [x for x in some_list if unicode(x, 'utf-8') == 'te']:
在上述情況下
它不應該匹配這樣真的不應該進入基於環路什麼我寫它不進入本聲明兩種方式:
列表理解應該只有真正使用。如果你只是想執行一些代碼,如果你的列表元素滿足特定的標準,那麼就使用'for'循環。 – Aya 2013-04-24 18:27:40
[x for x in ...]的輸出是一個列表,如果列表中有任何內容,則該列表始終爲真。 (例如,如果[False]:語句...始終爲真並執行該語句)要檢查列表元素或對其執行操作,您必須諮詢「any」,「all」,「map」,「filter」等... – Dusk 2013-04-24 18:32:09
此外,您的「僞代碼」版本比任何基於列表理解的解決方案更容易理解和更高效。 – Aya 2013-04-24 18:35:25