通过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

原文地址:https://www.cnblogs.com/Comero/p/8997585.html

学好python薪水有多少笔画_Python 获得汉字笔画相关推荐

  1. 学好python薪水有多少笔画_Python学到什么程度可以面试工作?

    近几年 Python 非常热门,在学术界和产业界的使用率显著提高.Python 作为「胶水语言」很方便与其他语言衔接,简单易学,实现方便的优点也使它很适合作为新手入门的第一个编程语言,但也有着运行效率 ...

  2. python生成一笔画_Python系列—一笔画问题的算法研究

    原标题:Python系列-一笔画问题的算法研究 鸣谢 VSRC感谢业界小伙伴--奶权,投稿精品原创类文章.VSRC欢迎精品原创类文章投稿,优秀文章一旦采纳发布,将有好礼相送,我们已为您准备好了丰富的奖 ...

  3. 如何才能学好python编程零基础_Python脚本该怎么学,零基础也可以学好Python编程吗?...

    这波太炸了!Python脚本可视化居然可以这么玩! 如同艺术家们用绘画让人们更贴切的感知世界,数据可视化也能让人们更直观的传递数据所要表达的信息.你知道Python脚本可视化有多好看么?就像下图这样, ...

  4. python 获取首字母_python获取汉字首字母-Go语言中文社区

    应用场景之一:可用于获取名字首字母,在数据库中查询记录时,可以用它来排序输出. from pytz import unicode # 获取汉字首字母 def multi_get_letter(str_ ...

  5. python生成字符图形_python生成汉字图片字库

    最近做文档识别方面的项目,做汉字识别需要建立字库,在网上找了各种OCR,感觉都不好,这方面的技术应该比较成熟了,OCR的软件很多,但没有找到几篇有含金量量的论文,也没有看到哪位大牛公开字库,我用pyg ...

  6. python算法有多少个_Python算法比较两个排序的列表并计算多少个...

    我必须设计一种算法,比较两个相同长度的排序列表,并返回它们之间的公共值数量. 因此,如果我有两个列表a = [2.9.15.27.36.40]和b = [9.11.15.23.36.44],则算法应将 ...

  7. Python实现获取汉字笔画数,根据汉字笔画数量排序

    起因 本人现在所在的公司是由香港人开办的,也是做做香港业务,一个车辆管理系统后台,也包括司机等人员管理.突然有一天,老板说我们的列表找司机不够人性化,不符合用户习惯.因为我们Python对中文排序默认 ...

  8. python学好了能干啥_新手该如何学python怎么学好python?_python学好了能干什么

    1)学好python的第一步,就是马上到www.python.org网站上下载一个python版本.我建议初学者,不要下载具有IDE功能的集成开发环境,比如Eclipse插件等. 2)下载完毕后,就可 ...

  9. python调用 matlab库_python调用matlab的搜索结果-阿里云开发者社区

    2018python技术问答集锦,希望能给喜欢python的同学一些帮助 小编发现问答专区中有很多人在问关于python的问题,小编把这些问题汇总一下,希望能给喜欢python的大家一些启示和帮助 本 ...

最新文章

  1. mysql数据库c 操作o_linux下c操作mysql数据库。gcc报错。谁能帮忙看下啊。
  2. View类的xml属性和相关方法说明
  3. 服务端负载均衡和客户端负载均衡
  4. Redis的数据结构之字符串
  5. B-Tree及其建立过程
  6. JSON(3)--- 数组
  7. 52 - 算法 - LeetCode 21 数据结构链表 头插法 递归
  8. 测试SQLServer拆分字符串到临时表
  9. Linux 命令(103)—— unzip 命令
  10. http 二进制_图解 HTTP 的前世今生!
  11. EVENT ADJUST_SCN 说明 [30681.1]
  12. 关于Kubernetes集群中常见问题的排查方法的一些笔记
  13. Solide work每日一练
  14. 使用地点云实现企业官网中的门店地图
  15. 图解 生成对抗网络GAN 原理 超详解
  16. 自下而上和自上而下的注意力模型《Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering》
  17. SwipeRefreshLayout极其简单的下拉刷新工具
  18. 章节十二:编程思维:如何debug
  19. unity 显示太阳_太阳系究竟有多大?来看看天文学家是怎么解答的
  20. 记忆力减退之----SP3232---STM32

热门文章

  1. Mysql全套看这一篇就够了特别详细
  2. Cadence Allegro向导创建DIP排针封装图文教程及视频演示
  3. 推荐40个互联网知名博客
  4. 网络图片转base64
  5. linux基础unit13-软件安装
  6. 向大师学习ZBrush雕刻布料和衣服上的褶皱
  7. 阿里矢量图引入的具体方法,详解!
  8. VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)
  9. Intellij IDEA中快速实现接口方法的快捷键
  10. JavaScript教程——从入门到精通-石川-专题视频课程