Python——输入姓名,返回姓名笔画小程序

Python——输入姓名,返回姓名笔画小程序因为要做选票 选票候选人要按照姓氏笔画排序 正好自己在学习 Python 就想着写一个返回姓名笔画的程序 程序基本实现了功能 但用户体验可能做的不好 后续有时间再修改吧 核心思想还是查表 表是从字母对照表是从 github 下载的 地址都写在参考内 参考 https github com ouyangpeng ChineseStrok github 地址 java 程序 姓氏笔画排序小程序

因为要做选票,选票候选人要按照姓氏笔画排序,正好自己在学习Python,就想着写一个返回姓名笔画的程序,程序基本实现了功能,但用户体验可能做的不好,后续有时间再修改吧!

核心思想还是查表,表是从字母对照表是从github下载的,地址都写在参考内:

参考:

https://github.com/ouyangpeng/ChineseStrokeSorting  (github地址,java程序,我只用了.db数据库文件)

Python——输入姓名,返回姓名笔画小程序

https://www.zhihu.com/question//answer/   (知乎里一个类似的回答)

Python——输入姓名,返回姓名笔画小程序

https://www.cnblogs.com/zhanghengyu/p/11121160.html  (字符串去空格)

数据库文件百度网盘链接地址:

import sqlite3 #使用sql数据库 import numpy as np conn = sqlite3.connect('ChinessStroke.db') #文件可以下载我上传的,也可从github下载 print ("Opened database successfully") c = conn.cursor() c.execute('select * from BI_HUA_BEAN') # BI_HUA_BEAN 这个数据库存储的就是笔画表 #c.execute("select name from sqlite_master where type='table' order by name") list = c.fetchall() list = np.array(list) #print(list[:,3] == '30002') #print(list[:,3]) #print(type(list)) #a = '甲' #print(ord(a)) while True: str_in = input('请输入姓名(按q结束):') if str_in == 'q': break str = str_in # print(str_in.split()) # str = ''.join(str_in.split()) stroke = 0 # 初始化姓名笔画 for i in str: num = ord(i) #使用汉字的unicode来匹配 print(num) equal_to_num = (list[:, 3] == '%d' % num) stroke += int(list[equal_to_num, 2]) print(list[equal_to_num, :]) print('%s的笔画为:%d'%(str,stroke)) 

 

 

 

今天的文章 Python——输入姓名,返回姓名笔画小程序分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2024-12-26 07:06
下一篇 2024-12-26 07:01

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/96966.html