Russian Names Generatior

russian-names的Python项目详细描述


俄罗斯名字生成库。西里尔字母和拉丁字母。 用于测试、模拟等。

安装

使用pip安装:

$ pip install russian-names

用法

导入包:

>>> from russian_names import RussianNames

基本示例

打印随机名称:

>>> RussianNames().get_person()

Владислав Николаевич Ильин

批次

创建一批人员在count选项中设置大小。

>>> rn = RussianNames(count=5, patronymic=False, name_reduction=True)
>>> batch = rn.get_batch()
>>> print(batch)

('Л. Ходилова', 'А. Креткова', 'Р. Тишанов', 'И. Закудряев', 'В. Демчин')

发电机

使用俄语名称作为生成器

>>> rn = RussianNames(count=7, patronymic=False, transliterate=True)
>>> for person in rn:
        print(person)

    Valeriy Forunin
    Pavel Senakosov
    Violetta Scherbovskaya
    Natalya Furshtatova
    Violetta Chuhontseva
    Polina Aksentsova
    Galina Botova

选项

选项列表:

optiondescriptiontypedefault
nameboolTrue
name_reductionAnna -> A.boolFalse
name_max_lenint10
patronymicboolTrue
patronymic_reductionFedorovich -> F.boolFalse
patronymic_max_lenint10
surnameboolTrue
surname_reductionIvanov -> I.boolFalse
surname_max_lenint10
countint10
genderfloat0.5
transliteratecyrillic to latinboolFalse
output_typeoutput data format‘str’ or ‘list’ or ‘tuple’ or ‘dict’‘str’
seedrandom seedintNone
rareuse non popular namesboolFalse
uppercaseset uppercase to all namesboolFalse

选项示例

对于信用卡:

>>> RussianNames(count=3, patronymic=False, transliterate=True, uppercase=True).get_batch()
    ('SEMEN SISYKIN', 'LYBOV POLEZAEVA', 'MIHAIL KAMAGOROV')

投票:

>>> RussianNames(count=3, surname_reduction=True).get_batch()
    ('Анатолий Юрьевич Ш.', 'Софья Ивановна Т.', 'Валерия Валерьевна Н.')

仅限女性:

>>> RussianNames(count=3, gender=0.0).get_batch()
    ('Кристина Петровна Тоншина', 'Клавдия Эдуардовна Караулова', 'Лариса Викторовна Короткина')

听写列表:

>>> RussianNames(count=3, output_type='dict').get_batch()
    (
        {'name': 'Кирилл', 'patronymic': 'Денисович', 'surname': 'Дрожжов'},
        {'name': 'Андрей', 'patronymic': 'Кириллович', 'surname': 'Шувиков'},
        {'name': 'Роман', 'patronymic': 'Евгеньевич', 'surname': 'Малеванкин'}
    )

获取当前选项

打印选项

>>> rn = RussianNames(count=10, gender=0.5, surname_max_len=15,
                      transliterate=True, uppercase=True)
>>> print(rn)

    RussianNames settings:
         name: True
         name_reduction: False
         name_max_len: 10
         patronymic: True
         patronymic_reduction: False
         patronymic_max_len: 10
         surname: True
         surname_reduction: False
         surname_max_len: 15
         count: 10
         gender: 0.5
         transliterate: True
         output_type: str
         seed: None
         rare: False
         uppercase: True

测试

$ pytest -v tests/*

许可证

这个项目是根据麻省理工学院的许可证授权的-请参见LICENSE.txt文件以了解详细信息

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

推荐PyPI第三方库


热门话题
java如何反射地迭代数组字段?   java NamedQuery错误“具有给定标识符的多行:1”   java无法使用单独类中的计时器更新TextView   兼容性什么时候可以很快使用新的Java功能?   java二叉树路径和   java矩形的性能   java我想从同一个子表在主表中添加两个外键   java如何获取基于特定日期的所有数据?   java javafx、OO编程规则和写入变量类型的选择   java使用带枚举的switch语句   java异步任务生成运行时异常   java为什么JLabel不显示下划线字符?   java如何解析具有可变参数号的函数?   带有按钮的java JavaFX自定义列表单元格:未调用处理程序   java Modelmapper无法映射整个模型?   传递给持久化的java分离实体,包含LatLng列表