取一个完整的人名并将其分割成各个部分

nameparts的Python项目详细描述


[![生成状态](https://secure.travis-ci.org/polera/nameparts.png)](http://travis-ci.org/polera/nameparts

nameparts是一个python模块,我编写它是为了解决将全名拆分为单个名称的问题。 零件(第一、中间、最后等)

您可以这样使用:

>>> from nameparts import Name
>>> n = Name("Thurston Howel III")
>>> n.first_name
'Thurston'
>>> n.last_name
'Howel'
>>> n.as_dict
{'first_name': 'Thurston', 'last_name': 'Howel', \
  'middle_name': None, 'suffix': None, 'generation': 'III', \
  'salutation': None}
>>> n = Name("Smith, John Paul")
>>> n.first_name
'John'
>>> n.last_name
'Smith'
>>> n.middle_name
'Paul'

如果您怀疑在给定字段中可能看到多个名称(即用a/k/a分隔),则可以使用多名称:

>>> from nameparts import MultiName
>>> names = MultiName("Bruce Wayne a/k/a Batman")
>>> names
[<Name: 'Bruce Wayne'>, <Name: 'Batman'>]
>>> [n.as_dict for n in names]
[{'last_name': 'Wayne', 'salutation': None, 'first_name': 'Bruce', 'suffix': None,
  'generation': None, 'middle_name': None, 'aliases': None},
 {'last_name': '', 'salutation': None, 'first_name': 'Batman', 'suffix': None,
  'generation': None, 'middle_name': None, 'aliases': None}]

multiname自动使用字符串“a/k/a”来拆分名称,但您可以为 覆盖:

>>> from nameparts import MultiName
>>> names = MultiName("Tony Stark | Ironman | Stark, Tony", splitter="|")
>>> names
[<Name: 'Tony Stark'>, <Name: 'Ironman'>, <Name: 'Tony Stark'>]

安装

来源:

python setup.py install

通过PIP:

pip install nameparts

nameparts在cpython 2.6、2.7、3.2和pypy上运行

许可证

nameparts是根据bsd许可证发布的。

评论/问题/改进

以上任何一项都是受欢迎的。请通过我个人资料中的电子邮件地址与我联系。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
未检测到“空格”的java ASCII码   音频如何在Java中设置SourceDataLine的音量   java MyBatissSpringBoot无法使用作为bean注入的数据源   Java字谜递归列表<List<String>>仅存储空列表<Strings>   java显示30px高的JPanel,然后用minecraft填充剩余空间   java JOGL平滑度   Java:按完整与否对1d对象数组进行排序   arraylist仅当java结构不存在时才将对象添加到java结构中   无法初始化java渲染库在安卓 studio 4.1.1上出现错误   java SpringBoot ClassCastException   java解析文本文件,基于字数   java=运算符引发异常   java使点可拖动并存储新坐标JavaFx   JavaWebSphereApplicationServer:EJB模块和JMS路由器