使用pycountry从国家获取大陆名称

Get continent name from country using pycountry

如何使用 pycountry 从国家名称转换大陆名称。我有一个这样的国家/地区列表

country = ['India', 'Australia', ....]

我想从中获取大陆名称。

continent = ['Asia', 'Australia', ....]

查看文档,像这样的东西可以解决问题吗?:

country_alpha2_to_continent_code()

它将国家代码(例如:NO、SE、ES)转换为大陆名称。

如果您首先需要获取国家代码,您可以使用:

country_name_to_country_alpha2(cn_name, cn_name_format="default")

从国家名称中获取国家代码。

完整示例:

import pycountry_convert as pc

country_code = pc.country_name_to_country_alpha2("China", cn_name_format="default")
print(country_code)
continent_name = pc.country_alpha2_to_continent_code(country_code)
print(continent_name)
from pycountry_convert import country_alpha2_to_continent_code, country_name_to_country_alpha2

continents = {
    'NA': 'North America',
    'SA': 'South America', 
    'AS': 'Asia',
    'OC': 'Australia',
    'AF': 'Africa',
    'EU': 'Europe'
}

countries = ['India', 'Australia']

[continents[country_alpha2_to_continent_code(country_name_to_country_alpha2(country))] for country in countries]

南极大陆不知道怎么办¯_(ツ)_/¯

pycountry-convert中提供了您需要的所有工具。

下面是一个示例,说明如何使用 pycountry 的工具创建自己的函数,将国家名称直接转换为大陆名称:

import pycountry_convert as pc

def country_to_continent(country_name):
    country_alpha2 = pc.country_name_to_country_alpha2(country_name)
    country_continent_code = pc.country_alpha2_to_continent_code(country_alpha2)
    country_continent_name = pc.convert_continent_code_to_continent_name(country_continent_code)
    return country_continent_name

# Example
country_name = 'Germany'
print(country_to_continent(country_name))

Out[1]: Europe 

希望对您有所帮助!

请记住,您可以使用“?? function_name'

?? pc.country_name_to_country_alpha2