让说我有一个包含字符串列表: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