在Python中搜索字符串列表

0 投票
4 回答
3021 浏览
提问于 2025-04-16 17:19

我想从我的列表中搜索国家,这里是我的列表:

 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)

然后你可以直接说“如果找到了国家('亚美尼亚'):”或者其他的国家名。

撰写回答