在Python中搜索字符串列表
我想从我的列表中搜索国家,这里是我的列表:
country=['American Samoa',
'Andorra','Angola','Anguilla'
,'Antarctica',' Barbuda',
'Argentina', 'Armenia', 'Aruba',
'Australia',
'Austria','Azerbaijan’,'Bahamas','Bangladesh','Barbados','BELARUS']
我用了这个函数,但我觉得它是错的
def find(f,seq):
for item in country:
if f(item):
return item
你能帮我修正一下我的代码吗?任何帮助都非常感谢
4 个回答
0
你需要的是
filter(f,seq)
就这些。
如果你不知道f是什么,那就很遗憾,我们也无法猜测。
另外可以看看iflter()
。
当你需要做一些比较通用的事情时,可以在文档中搜索这个思路:“一定有某个函数可以完成我想要的,在哪里呢?”
而不是“我该怎么做?”
0
我觉得你可以直接使用
countries = ['American Samoa', ...]
if country in countries:
...
5
嗯,这里有一个可能更清楚的例子:
def country_found(country_to_find):
countries=['American Samoa','Andorra','Angola','Anguilla','Antarctica',
'Barbuda','Argentina', 'Armenia', 'Aruba','Australia', 'Austria','Azerbaijan’,
'Bahamas','Bangladesh','Barbados','BELARUS']
return (country_to_find in countries)
然后你可以直接说“如果找到了国家('亚美尼亚'):”或者其他的国家名。