本文目录一览:
- 1、python分析人数最多的姓氏
- 2、用python编写 将姓名的中文拼音表示换成英文表示,名在前,姓在后
- 3、Python姓名字段的第一个字符为姓,剩余字符为名
- 4、python怎样把名字和姓氏交换
- 5、用python编写一个程序,获得包含一个人的名、中间名和姓氏 的字符串,显示其?
python分析人数最多的姓氏
先收集常见姓氏列表,获取姓名的第一个字,然后在姓氏列表中匹配,如果找到那么姓氏就是这个字,如果没找到就尝试姓名前两个字,如果还没找到就尝试更多字(当然中国姓氏一般就两字,我还没见过两字以上的姓)或者手动辨别姓氏,然后把姓氏补充进列表。这种思路的问题在于复合姓可能会出问题,比如”司“和”司马“,脚本识别出的姓会是”司“。#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Python 版本需要为 3.5 以上
first_names = ('李', '王', '司', '司马')
def name_parser(name, first_name_count=1):
"""
分析姓名,返回姓和名的元组
:param str name: 姓名
:param int first_name_count: 姓氏长度,默认为1
:return: 姓和名的元组,如果没分析成功就返回空元组
:rtype: tuple
"""
if name[0:first_name_count] in first_names:
return (name[0:first_name_count], name[first_name_count:])
else:
return ()
if __name__ == '__main__':
# name.txt 需要为 UTF-8 编码,如果为其他编码,自行优化处理
with open('name.txt', 'r', encoding='utf-8') as f:
for i in f:
name = i.rstrip('n')
# 最多尝试两字的姓
for n in range(1, 3):
s = name_parser(name, n)
if s:
print('{} 的姓氏为: {},名字为: {}.'.format(name, s[0], s[1]))
break
else:
print('未分析出 {} 的姓氏和名字,可能需要补充姓氏列表.'.format(name))
用python编写 将姓名的中文拼音表示换成英文表示,名在前,姓在后
##将xm指定为姓名的中文拼音表示(空格分隔姓与名)
xm='ma liu'
print(' '.join(xm.split()[::-1]))
Python姓名字段的第一个字符为姓,剩余字符为名
使用索引和拼接()获取Python中名字的前两个字符和姓氏的第一个字符:pythonindexingsplice即可。
使用沿空间分割。然后用list_after_split[0][0:2]作为名字,用list_after_split[1][0:1]作为姓氏。然后把这两条线连在一起。
应该将所有模板都放在所在应用中或将项目的所有模板放到一个单独的目录。
python怎样把名字和姓氏交换
排列组合合并Python里两个list的元素 import itertools a,b=[1,2,3],[4,5,6] print(list(itertools.product(a,b)))
用python编写一个程序,获得包含一个人的名、中间名和姓氏 的字符串,显示其?
用python编写一个程序,输出你的姓名和学号的方法。
如下参考:
1.输入命令提zhidao示符,输入python并按Enter进入python交互模式。
2.输入name=input()后按回车,如下所专示。
3.输入名字“mymy”,然后回车。此时,变量将“name”回答为“mymy”。
4.输入名称后返回,可以看到变量名的内容是属:mymy。
5.输入打印(姓名)并回车。输出变量名是mymy。
6.输入print('hello',name),然后回车。输出是:hellomymy。