gpt4 book ai didi

python - 如何从python中的字符串中提取国家/地区

转载 作者:行者123 更新时间:2023-12-04 12:13:56 32 4
gpt4 key购买 nike

我有一些文本,其中可能包含也可能不包含国家/地区名称。例如:

' Nigeria: Hotspot Network LTD Rural Telephony Feasibility Study'


这就是我从中提取国名的方式。在我的第一次尝试中:
findcountry("Nigeria: Hotspot Network LTD Rural Telephony Feasibility Study")

def findCountry(stringText):
for country in pycountry.countries:
if country.name.lower() in stringText.lower():
return country.name
return None
不幸的是,它给了我错误的输出 [Niger]而正确的是尼日利亚。注意尼日尔和尼日利亚是世界上两个不同的现有国家。
在第二次尝试中:
def findCountry(stringText):
full_list =[]
for country in pycountry.countries:
if country.name.lower() in stringText.lower():
full_list.append(country)

if len(full_list) > 0:
return full_list

return None
我收到 ['Niger', 'Nigeria']作为输出。但我找不到让尼日利亚作为我最终输出的方法。如何实现这一目标。
注意:这里我知道尼日利亚是正确的答案,但稍后我会将其放入代码中以选择文本中出现的最终国家名称,并且它应该具有非常高的检测准确度。

最佳答案

总是先搜索最长的字符串;这将防止您遇到的那种错误。

countries = sorted(pycountry.countries, key=lambda x: -len(x))

关于python - 如何从python中的字符串中提取国家/地区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67768095/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com