一.前言

最近在学日语,五十音图已会,进入到日语汉字的学习部分。目前遇到的最大困哪是日语进行训读的汉字记不住它的发音,或者记了就忘记,例如‘山口-やまくち 本田-ほんだ’。

于是想到了用python进行强化记忆训练。其基本思路是用把手打或者爬虫得到的日语汉字与对应假名输入excel里面写成两列,columns=['汉字','假名'],每次随机给出汉字,我在键盘输入假名,如果这个假名正确可以选择下一个或者退出训练,如果错误选择一直练到做对为止。每次训练完成反馈一共做了多少次,每次对了多少个,错了多少个。

二.代码

1.python代码网上乱学的,如有建议指出~

import pandas as pd

import random

df = pd.read_excel(r'Characters.xlsx')#两列假名储存在Characters.xlsx中

#一列表头叫‘汉字’,一列表头叫‘假名’

k=len(df)

Continue='1'

Right=[]#储存输入正确的汉字

Wrong=[]#储存输入错误的汉字

i=1

while Continue=='1':

t=random.randrange(0,k)

Hanzi=df.loc[t,'汉字']

Jiaming=df.loc[t,'假名']

print('第%s个字:'%i+Hanzi)

i=i+1

a = input("input假名:")

if Jiaming==a:

Right.append(Hanzi)#记录写输入对的汉字

print('Right~ Next or Quit: 1 or 0')#输入正确,下一个输入数字'1',退出训练数字'0'

Continue=input('输入数字:')

else:

print('Wrong! Next or Quit or Again: 1 or 0 or 2')#输入错误,继续输入数字'1',退出训练数字'0'

Wrong.append(Hanzi)#记录写输入错误的汉字

Continue=input('输入数字:')

while Continue=='2':

a = input("input假名:")

if Jiaming==a:

Right.append(a)

print('Right~ Next or Again: 1  or 2')#输入正确,下一个输入数字'1',再来一次数字'2'

Continue=input('输入数字:')

else:

print('Wrong! Next or Again: 1  or 2')#输入错误,下一个输入数字'1'并显示答案,再来一次数字'2'

Wrong.append(a)

Continue=input('输入数字:')

if Continue=='1':

print(Jiaming)

Right_word_dict = {}

Wrong_word_dict = {}

for char in Right:

if char not in Right_word_dict:

Right_word_dict[char]=1

else:

Right_word_dict[char]+=1

for char in Wrong:

if char not in Wrong_word_dict:

Wrong_word_dict[char]=1

else:

Wrong_word_dict[char]+=1

#用字典分析错误和正确的汉字的结果

RightResults = sorted(Right_word_dict.items(), key=lambda x:x[1],  reverse=True)  #x[1]或者x[0]排序方式不一样,默认x[1]字频排序

WrongResults = sorted(Wrong_word_dict.items(), key=lambda x:x[1],  reverse=True)

2.效果示例

三.总结

1.代码部分

循环的判定条件我没写好,用的是‘1’、‘2’、‘3’每次输入数字很麻烦,而且切换到日语输入法后必须要用数字键盘的‘0’‘1’‘2’才能识别,不小心按到了‘enter’键作为input的变量就直接退出训练了。后面改进是想办法识别‘enter’或者‘space’键作为继续、退出的条件吧。

2.训练后的体会

这种训练方式本质上和死记硬背没有区别,其实更想解决的问题是如何从日语的汉字直接的到假名,或者说读音的。就是为什么‘山’训读叫‘’やま’,而不是‘やさし’,‘水’为什么叫‘みず’,而不是‘みち’。

目前想到或者找到的答案是汉字本身无法从形状直接得到他的读音,就像汉语里面之所以知道“山”读作‘shan’是因为从小背到大,却不知道为什么读作‘shan’。英语是可以直接拼读的,一般外国人也是不需要音标的。

貌似除了万能的“多看、多记、多听”没有其他解决办法了。

日语python怎么说_利用python进行日语汉字-假名转换相关推荐

  1. python高斯求和_利用Python进行数据分析(3)- 列表、元组、字典、集合

    本文主要是对Python的数据结构进行了一个总结,常见的数据结构包含:列表list.元组tuple.字典dict和集合set. image 索引 左边0开始,右边-1开始 通过index()函数查看索 ...

  2. python照片墙地图_利用python生成照片墙的示例代码

    PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了.其官方主页为:PIL. PIL历 ...

  3. python图色检测_利用python打开摄像头及颜色检测方法

    最近两周由于忙于个人项目,一直未发言了,实在是太荒凉了....,上周由于项目,见到Python的应用极为广泛,用起来也特别顺手,于是小编也开始着手学习Python,-下面我就汇报下今天的学习成果吧 小 ...

  4. python音频聚类_利用python的KMeans和PCA包实现聚类算法

    题目: 通过给出的驾驶员行为数据(trip.csv),对驾驶员不同时段的驾驶类型进行聚类,聚成普通驾驶类型,激进类型和超冷静型3类 . 利用Python的scikit-learn包中的Kmeans算法 ...

  5. python mysql 分页_利用python对mysql表做全局模糊搜索并分页实例

    在写django项目的时候,有的数据没有使用模型管理(数据表是动态添加的),所以要直接使用mysql.前端请求数据的时候可能会指定这几个参数:要请求的页号,页大小,以及检索条件. "&quo ...

  6. python过去日期_利用python获取当前日期前后N天或N月日期的方法示例

    前言 最近因为工作原因,发现一个Python的时间组件,很好用分享出来!(忘记作者名字了,在这里先感谢了),下面话不多说,来一起看看详细的介绍吧. 示例代码: # -*- coding: utf-8 ...

  7. python 词云_利用Python生成词云

    利用Python生成词云 一.第三方库的安装与介绍 1.1  Python第三方库jieba(中文分词) 1.介绍 "结巴"中文分词:做最好的 Python 中文分词组件. 2.特 ...

  8. python爬虫背景_利用Python代码实现一键抠背景功能

    前言 又是一个逛csdn发现的一个有趣的小项目,可以一键抠背景,需要用到removebg模块及其API,API可从其官网免费获取,网址如下https://www.remove.bg/zh ps:加上/ ...

  9. python代码物理_利用python求解物理学中的双弹簧质能系统详解

    前言 本文主要给大家介绍了关于利用python求解物理学中双弹簧质能系统的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 物理的模型如下: 在这个系统里有两个物体,它们的质 ...

最新文章

  1. python入门指南 许半仙 txt-第1题_峥嵘_玄幻奇幻_百家网
  2. 异地多活场景下的数据同步之道 | 珍藏版
  3. AJAX框架衣柜内部结构,揭秘最实用的衣柜内部结构这样布局,速速get!
  4. 分组取最新记录的SQL
  5. 【文末有福利】炒鸡蛋竟然与无人驾驶有关?
  6. C++文件读写函数之——fopen、fread和fwrite、fgetc和fputc、fgets和fputs、ftellf和fseek、rewind...
  7. 3D视觉(二)四元数简要说明
  8. hdu 4314 Save the dwarfs
  9. 图片涂改了怎么给复原_图片马赛克怎么去掉 怎么去除马赛克方法介绍
  10. 学生宿舍管理系统的设计与实现
  11. 基本图像分类与目标检测网络要点总结
  12. NFT吸血DeFi,冰火两重天
  13. python个人博客搭建_Django后台 + Wordpress主题快速搭建个人博客
  14. java:去除数组重复元素的四种方法
  15. 思科路由器配置enable password
  16. mockito简要教程
  17. Sublime的使用小技巧
  18. 温湿度传感器的学习笔记
  19. 聚类dbi指数_聚类算法
  20. 云原生系列技术(四):DevOps技术

热门文章

  1. Ubuntu系统安装或者与win10/win7共存
  2. npp夜光数据介绍 viirs_最新 夜光遥感影像VIIRSDMSP下载总结
  3. dvwa小马上传大马php,集训第六天:文件上传漏洞
  4. 房内有一只猴子、一个箱子,天花板上挂了一串香荷,其位置关系如图2 33所示,猴子为了拿到 香蕉,它必須把箱子推到香荷下面,然后再爬到箱子上.请定义必要的谓词,写出问题的初始状态(即图 2 33所示的
  5. java socket 通信协议_java 基于TCP协议的Socket编程和通信
  6. python拆分excel行_Python将一个Excel拆分为多个Excel
  7. element 日期选择图标_element-ui 限制日期选择的方法(datepicker)
  8. Mac在coursera上视频无法播放,长期黑屏
  9. android 单行文本滚动,android TextView 容纳不下内容,让字向左滚动的办法
  10. java 枚举获取key_Java枚举根据key获取value