Complement to nameparser for parsing lists of names. Namesparser handles initials and variable name ordering.
Examples of lists of names:
- Oliver Boliver Butt and Zanzibar Buck-Buck McFate and Bodkin Van Horn
- OB Butt, ZBB McFate and B Van Horn
- Butt, Oliver Boliver, Zanzibar Buck-Buck McFate, and Bodkin Van Horn
- Butt O.B., McFate Z.B.B. and Van Horn B.
(Names courtesy of Dr. Seuss's Too Many Daves.)
>>> from namesparser import HumanNames
>>> names = HumanNames("Oliver Boliver Butt and Zanzibar Buck-Buck McFate and Bodkin Van Horn")
>>> str(names)
'Oliver Boliver Butt and Zanzibar Buck-Buck McFate and Bodkin Van Horn'
>>> names.human_names
[<HumanName : [
title: ''
first: 'Oliver'
middle: 'Boliver'
last: 'Butt'
suffix: ''
nickname: ''
]>, <HumanName : [
title: ''
first: 'Zanzibar'
middle: 'Buck-Buck'
last: 'McFate'
suffix: ''
nickname: ''
]>, <HumanName : [
title: ''
first: 'Bodkin'
middle: ''
last: 'Van Horn'
suffix: ''
nickname: ''
]>]
>>> names.name_strings
['Oliver Boliver Butt', 'Zanzibar Buck-Buck McFate', 'Bodkin Van Horn']
>>> names = HumanNames("OB Butt, ZBB McFate and B Van Horn")
>>> str(names)
'OB Butt and ZBB McFate and B Van Horn'
>>> names = HumanNames("Butt, Oliver Boliver, Zanzibar Buck-Buck McFate, and Bodkin Van Horn")
>>> str(names)
'Oliver Boliver Butt and Zanzibar Buck-Buck McFate and Bodkin Van Horn'
>>> names = HumanNames("Butt O.B., McFate Z.B.B. and Van Horn B.")
>>> str(names)
'O.B. Butt and Z.B.B. McFate and B. Van Horn'
pip install namesparser
python -m unittest discover