我在按照指示here on using the python-nameparser。你知道吗
我的问题是,对于包含“助理教授”的人名,我得到的头衔是“助理”,而“教授”被指定为名字。你知道吗
>>> o.full_name = 'Assistant Professor Darwin Mittenchops'
>>> o
<HumanName : [
Title: 'Assistant'
First: 'Professor'
Middle: 'Darwin'
Last: 'Mittenchops'
Suffix: ''
]>
而不是
>>> o
<HumanName : [
Title: 'Assistant Professor'
First: 'Darwin'
Middle: ''
Last: 'Mittenchops'
Suffix: ''
]>
他们添加自定义常量以解决此问题的示例如下:
>>> from nameparser import HumanName
>>> from nameparser.constants import PREFIXES
>>>
>>> prefixes_c = PREFIXES | set(['te'])
>>> hn = HumanName(prefixes_c=prefixes_c)
>>> hn.full_name = "Te Awanui-a-Rangi Black"
>>> hn
<HumanName : [
Title: ''
First: 'Te Awanui-a-Rangi'
Middle: ''
Last: 'Black'
Suffix: ''
]>
所以,下面让我把“助理教授”列为一个头衔:
>>> from nameparser import HumanName
>>> from nameparser.constants import TITLES
>>> titles_c = TITLES | set(["assistant professor"])
>>> hn = HumanName(titles_c=titles_c)
>>> hn.full_name = 'Assistant Professor Darwin Mittenchops'
>>> hn
<HumanName : [
Title: 'Assistant'
First: 'Professor'
Middle: 'Darwin'
Last: 'Mittenchops'
Suffix: ''
]>
没有骰子。你知道吗
>>> "assistant professor" in titles_c
True
所以,我知道它就在那里。只是好像不管用。你知道吗
啊,我读得太快了。代码可以处理组合词,但是我们需要将这些词单独添加到
titles_c
集合中,而不是作为一个单元。示例:相关问题 更多 >
编程相关推荐