python 获得汉字笔画

学习提速专享!AI工具全家桶免费用 限时购周边加赠Coding Plan Lite,解锁20+主流AI工具,写代码、查资料快人一步! 阅读详情

通过unihan的文件来实现。
只要是unihan中有kTotalStrokes字段,获取其笔画数。
Hash也是非常简单清楚的,但想到这些unicode其实会有一个分布规律,就记录了一下,
利用此性质通过数组方式来获取笔画。

记录了一下unicode的范围

start: [13311, 19968, 63744, 131072, 173824, 177984, 178208, 194995]
end : [19893, 40917, 64045, 173782, 177972, 178205, 183969, 194998]

总共包括80682个存在笔画数的unicode码,包含CJKV。
64045-131072中间都没有此字段,就分了两部分。

此处使用python3 Demo实现,原理非常简单:使用数组保持笔画,将unicode映射到数组index,即可获取对应笔画数

def get_stroke(c):
    # 如果返回 0, 则也是在unicode中不存在kTotalStrokes字段
    strokes = []
    with open(strokes_path, 'r') as fr:
        for line in fr:
            strokes.append(int(line.strip()))
 
    unicode_ = ord(c)
 
    if 13312 <= unicode_ <= 64045:
        return strokes[unicode_-13312]
    elif 131072 <= unicode_ <= 194998:
        return strokes[unicode_-80338]
    else:
        print("c should be a CJK char, or not have stroke in unihan data.")
        # can also return 0

strokes_path: https://github.com/helmz/Corpus/blob/master/zh_dict/strokes.txt
"按照unicode顺序排列的笔画数"

Python实现获取汉字笔画数,根据汉字笔画数量排序 起因 本人现在所在的公司是由香港人开办的,也是做做香港业务,一个车辆管理系统后台,也包括司机等人员管理。突然有一天,老板说我们的列表找司机不够人性化,不符合用户习惯。因为我们Python对中文排序默认是按照Unicode编码来排序的,很正常嘛,一般都喜欢希望按照拼音来排序。然后我就惊呆了:香港人不会拼音… 那按照五笔排序?也不是,他们要按照汉字笔画数量排序,笔画少的,排在前面。 额…(靓仔语塞.jpg) 不过既然老板需要,那还是要搞起来的 如果不是做香港业务,我可能永远也不会想到中文排序除了【按照拼音排 阅读详情

相关推荐

048python写字笔画顺序识别检测笔顺是否有误检测

084基于CNN卷积神经网络的核桃品质检测_含10多种模型包括alexnet、DenseNe。089基于深度学习的小样本数据检测_含10多种模型包括alexnet、DenseNet、DL。083基于深度学习的手势识别小程序版本_含10多种模型包括alexnet、DenseNet。088基于深度学习的番茄病害检测小程序版本_含10多种模型包括alexnet、Dens。081基于深度学习的农业病虫害检测小程序版本_含10多种模型包括alexnet、De。

rgrfsgthth的博客 1429

python查询笔画数(含汉字编码表)

python查询笔画数(含汉字编码表)

中文姓名按笔画排序的算法实现.zip

汉字按姓氏笔画排序是一种历史悠久且在中国文化中广泛使用的排序方式。通过按姓氏中每个字的笔画数多少来排列先后顺序,该方法特别适用于姓名目录或电话簿等场景。这种排序方式不仅能够帮助人们快速定位到特定的人名,而且在一定程度上体现了对汉字文化的尊重和应用。在信息处理中,按笔画排序还是一种特定的数据库查询优化手段,尤其在大数据环境下,合理利用笔画排序可以提升查询效率。此外,由于汉字笔画排序方法与计算机语言处理的差异,它也成为了在IT领域中算法和数据结构教育的重要案例。

weixin_36487018的博客 1187

获得汉字笔画

create function fun_getbh(@char nchar(2)) returns int as begin return( case when unicode(@char) between 19968 and 40869 then( select top 1 id from( select id=1,ch=N'亅' union all select 2,N'阝' union all select 3,N'马' union all select 4,N'风' union all select 5,N'龙' union all select 6,N'齐' union all select 7,N'龟' union all select 8,N'齿' union all select 9,N'鸩' union all select 10,N'龀'

Python 获得汉字笔画

通过unihan的文件来实现。 只要是unihan中有kTotalStrokes字段,获取其笔画数。 Hash也是非常简单清楚的,但想到这些unicode其实会有一个分布规律,就记录了一下, 利用此性质通过数组方式来获取笔画。 记录了一下unicode的范围 start: [13311, 19968, 63744, 131072, 173824, 177984, 178208, 1949...

diaolie2445的博客 5413

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

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

weixin_40127330的博客 3019

学好python薪水有多少笔画_Python 获得汉字笔画

通过unihan的文件来实现。只要是unihan中有kTotalStrokes字段,获取起笔画数。Hash也是非常简单清楚的,但想到这些unicode其实会有一个分布规律,就记录了一下,利用此性质通过数组方式来获取笔画。记录了一下unicode的范围start: [13311, 19968, 63744, 131072, 173824, 177984, 178208, 194995]end : [...

weixin_39713578的博客 179

python简单爬虫 指定汉字笔画动图下载

python简单爬虫 指定汉字笔画动图下载 网址: http://www.hanzi5.com 分析过程 代码实现

Snow_224的博客 3647

Python实现汉字人名按拼音或笔画顺序排序

推荐图书:《Python程序设计(第3版)》,(ISBN:978-7-302-55083-9),董付国,清华大学出版社,2020年6月第1次印刷,2021年7月第9次印刷,山东省一流本科课...

董付国的Python专栏 2130

[开发技巧] 如何获取汉字笔画数

unihan数据库获取汉字笔画数

Add bricks to the edifice of the world as you envision it. 1289

多种类型,完整的20902汉字笔画数笔顺数据库

有错误,我这么觉得,然后下载回来大家自己研究下 完整的汉字笔画数笔顺数据库,包含ID、汉字笔画数、笔顺、Unicode、GB码信息。 每个汉字带有笔顺,可以通过笔顺知道汉字的构造和书写顺序; 可以通过给定一个笔顺,快速知道笔画数。 该数据库为access的aoo数据库,完整的包含了20902汉字,7000常用字。可以使用c、c++、C#、PHP、Delphi、Java或者Web语言如ASP、ASP.net进行汉字系统的开发

计算汉字笔画

计算每个汉字笔画数

python使用海龟turtle实现绘制汉字、中文

python使用海龟turtle实现绘制汉字、中文

c1007857613的专栏 1万+

Python小海龟turtle画汉字

Python小海龟turtle画汉字 打印汉字 如果单纯想在turtle的界面输出汉字,可以直接使用turtle.write 打印出汉字。 # 这个函数就是打印汉字 没有移动的轨迹 def writeWord(target_word, startx, starty): # 基于坐标,打印汉字 """ 基于坐标,打印单个汉字 :param target_word: 目标汉字 :param startx: 起始位置x :param starty: 起始位置y :

wang720521的博客 1万+

MakeMeAHanzi终极指南:免费开源汉字数据宝库,9000+汉字笔画动画全掌握

汉字学习的数字化时代,你是否曾为找不到高质量的汉字笔画顺序数据而烦恼?MakeMeAHanzi正是为解决这一痛点而生的免费开源项目,它提供了超过9000个常用简体及繁体汉字的完整数据集合,包括详细的**汉字笔画动画**和丰富的汉字信息。无论你是开发者、教育工作者还是汉字学习者,这个项目都能为你提供强大的数据支持。 ## 🎯 项目核心价值:为什么选择MakeMeAHanzi? ### 完全免

gitblog_00322的博客 813

Python用turtle画汉字

Python用turtle画汉字

A20802013的博客 1831

用paddleocr识别汉字_汉字笔画、结构变形技法!

文/尹泽霖笔画汉字的最小构成单位,在字体设计中也是字体性格的最直接表现。通常在字体设计中需要先设定好笔画,然后再进行造字。不管笔画形式的不同还是笔画粗细的不同,都会给人带来不同的视觉感受。所谓粗细是指针对汉字笔画可以加粗或者变细,也可以强调笔画的粗细对比。拟态指模仿某个汉字的动作,加入动态符号,使笔画形意兼具、出神入化。所谓借形的技法,就是将汉字中某一个或某些笔画用意义相近的图形替代...

weixin_42300194的博客 599

【叶子函数分享四十二】得到汉字笔画函数

【叶子函数分享四十二】得到汉字笔画函数

沧海一叶点滴心得 4510
上一篇: python 取得当前年份
下一篇: python去掉字符串数字
whatday
博客等级 码龄20年 3705粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值