前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >汉字的使用频率2024.4.15

汉字的使用频率2024.4.15

作者头像
用户7138673
发布2024-04-17 17:50:21
810
发布2024-04-17 17:50:21
举报
文章被收录于专栏:大大的小数据大大的小数据

1、娃识字

2、生活常用字

卫生间、地名、车牌等等

3、统计常用字的频率,并学习,观察常用字的复杂程度,观察文字的信息熵

4、邢红兵 中文主页 北京语言大学教师个人主页系统 (blcu.edu.cn)

https://faculty.blcu.edu.cn/system/resource/tsites/download.jsp?ap=jswzfj&fl=%2F_vsl%2FC703E9E1CDC6C1935C654FD92B74EC47%2F51F589F5%2FCA161&tid=25913&fid=1334

5、笔画多,其实是增加了识别的冗余度,更加容易识别。只是书写更复杂。所以应该区分认读和书写的区别要求。

6、要配合词组、场景、句子

7、codeSnippet/按照中文笔画数排序/main.py at main · WuChengqian520/codeSnippet · GitHub

统计中文笔画数量

代码语言:javascript
复制
# 加载汉字笔画对照文件,参考同一目录下的 chinese_unicode_table.txt 文件格式
chinese_char_map = {}
with open('./chinese_unicode_table.txt', 'r', encoding='UTF-8') as f:
    lines = f.readlines()
    for line in lines[6:]:  # 前6行是表头,去掉
        line_info = line.strip().split()
        # 处理后的数组第一个是文字,第7个是笔画数量
        chinese_char_map[line_info[0]] = line_info[6]

def get_strokes(char: str) -> int:
    """
    获取单个汉字的笔画数量

    :param char: 单个汉字字符串
    :return: 汉字的笔画数
    """
    if 0x4E00 <= ord(char) <= 0x9FA5:  # 检查是否汉字范围内
        return int(chinese_char_map.get(char, '汉字不存在'))
    else:
        return '非汉字字符'

# 用户输入汉字,获取笔画数
if __name__ == '__main__':
    hanzi = input('请输入一个汉字:')
    strokes = get_strokes(hanzi)
    print(f'汉字:{hanzi},笔画数量:{strokes}')
代码语言:javascript
复制
# -*- coding: utf-8 -*-
"""
Created on Mon Apr 15 15:04:40 2024

@author: Administrator
"""

import openpyxl

# 加载汉字笔画对照文件
chinese_char_map = {}
with open('./chinese_unicode_table.txt', 'r', encoding='UTF-8') as f:
    lines = f.readlines()
    for line in lines[6:]:  # 跳过前6行表头
        line_info = line.strip().split()
        chinese_char_map[line_info[0]] = int(line_info[6])  # 第7个是笔画数量

def get_strokes(char: str) -> int:
    """返回单个汉字的笔画数量"""
    return chinese_char_map.get(char, '汉字不存在')

# 加载Excel文件
wb = openpyxl.load_workbook('characters.xlsx')
sheet = wb.active

# 遍历character列, 假设从第2行开始有汉字,第1行是标题
for row in range(2, sheet.max_row + 1):
    char_cell = sheet[f'A{row}']  # 假设汉字在A列
    stroke_cell = sheet[f'B{row}']  # 假设我们将要把笔画数写入B列
    char = char_cell.value
    if char and len(char) == 1:
        strokes = get_strokes(char)
        stroke_cell.value = strokes
    else:
        stroke_cell.value = '输入错误'

# 保存修改后的Excel文件
wb.save('characters_with_strokes.xlsx')

统计每个字的笔画数量

8、画折线图

汉字出现最多的是13画

9、本来我想先学习笔画最少的汉字,为什么汉字笔画少的不给予最常用的意义呢?根据信息熵原理、摩斯电码原理,是最经济的信息传播呀?

认识10%的汉字,需要认识5个字

20%,15

30%,35

40%,65

50%,116

60%,199

70%,342

80%,586

90%,1080,

认识1千个最常用字,可以认识90%的汉字

有17页,可以打印出来了

95%,1610

99%,2847

10、看了一下姓名汉字在使用频率排序,复杂的汉字并不陌生。

11、统计1千个常用汉字(90%)内的4笔画内的汉字,可以打印出来学习了,共115个字

12、下一步:查询相关识字、甲骨文、图画识字的书籍,思维导图绘制

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大大的小数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档