前两天开始学日语,找了半小时没找到想要的APP(实际上是想要的APP好像要收费=.=),于是想自己写一个想要的功能,上图:

想添加的功能(有bug的地方):

1,会出现某些选项重复,但是不影响使用,懒得改了,毕竟学这个也就几天的事,写个代码也就是自己用用,不想花太多时间
2,用户体验不知道怎么样,反正自己够用了
3,如果还有bug也不想改了,本着开源的精神(就这么两行还什么精神!),欢迎随意修改,使用,传播,要是能改成Android版最好!我就是没找到想要的Android版才自己写了个这么个东西
不多说,上渣代码:

# coding:utf8
# 欢迎随意传播,更改,增加功能
# python3 写的,python2好像也能用import random
import timeping = ['あ', 'い', 'う', 'え', 'お', 'か', 'き', 'く', 'け', 'こ', 'さ', 'し', 'す', 'せ', 'そ', 'た', 'ち', 'つ', 'て', 'と', 'な', 'に', 'ぬ', 'ね', 'の', 'は', 'ひ', 'ふ', 'へ', 'ほ', 'ま', 'み', 'む', 'め', 'も', 'や', 'ゆ', 'よ', 'ら', 'り', 'る', 'れ', 'ろ', 'わ', 'を', 'ん']
pian = ['ア', 'イ', 'ウ', 'エ', 'オ', 'カ', 'キ', 'ク', 'ケ', 'コ', 'サ', 'シ', 'ス', 'セ', 'ソ', 'タ', 'チ', 'ツ', 'テ', 'ト', 'ナ', 'ニ', 'ヌ', 'ネ', 'ノ', 'ハ', 'ヒ', 'フ', 'ヘ', 'ホ', 'マ', 'ミ', 'ム', 'メ', 'モ', 'ヤ', 'ユ', 'ヨ', 'ラ', 'リ', 'ル', 'レ', 'ロ', 'ワ', 'ヲ', 'ン']
yin = ['a', 'i', 'u', 'e', 'o', 'ka', 'ki', 'ku', 'ke', 'ko', 'sa', 'si/shi', 'su', 'se', 'so', 'ta', 'ti/chi', 'tu/tsu', 'te', 'to', 'na', 'ni', 'nu', 'ne', 'no', 'ha', 'hi', 'hu/fu', 'he', 'ho', 'ma', 'mi', 'mu', 'me', 'mo', 'ya', 'yu', 'yo', 'ra', 'ri', 'ru', 're', 'ro', 'wa', 'wo','n']filename = './训练记录.log'
info = '''      日语五十音图练习by dreamingc
请选择练习内容:1:平假名练习2:片假名练习3:混合练习
'''
info2 ='''开始训练,按 ctrl+C 强行停止'''
输入错误 = "输入有误,请重新输入"print(info)
tim1 = time.localtime(time.time())
start = time.time()aa = input()
while aa not in ['1','2','3']:print(输入错误)aa = input()
else :aa = int(aa)if aa == 1:train = {x:y for x,y in zip(ping, yin)}elif aa == 2:train = {x:y for x,y in zip(pian, yin)}else :train = {x:y for x,y in zip(ping, yin)}train.update({x:y for x,y in zip(pian, yin)})
print(info2)
count = 0for k,v in train.items():print('\n',k,'的读音:')m = yin[:yin.index(v)]+(yin[yin.index(v)+1:])choice = []for i in range(4):choice.append(m[random.randint(0,44)])ans = random.randint(0,3)choice[ans] = vprint('1:',choice[0],'   2:',choice[1],'   3:',choice[2],'   4:',choice[3])inpt = input()while inpt not in ['1','2','3','4']:print(输入错误)inpt = input()inpt = int(inpt)if inpt == ans+1:print('正确')count += 1;else:print('错误,正确答案为:',ans+1,choice[ans])finish = time.time()
print('\n恭喜,完成一次训练,正确率:',count,'/',92 if aa==3 else 46 )
print('用时:%.2f 秒\n' % (finish-start))with open (filename,'a') as f:f.write(time.strftime('%Y-%m-%d-%H %I:%M',tim1))f.write('\n     正确率:')f.write(str(count))f.write('/')f.write(str(92 if aa==3 else 46))f.write('    用时:%.2f 秒\n' % (finish-start))

忘了说,最后会在同一目录下生成日志文件

用python练习日语五十音图相关推荐

  1. 日语五十音图的记忆方法

    い イ i い通汉字以,也念i,所以很好记的.イ呢,我每次看到它就会想起汉字"依",也就记住了. う ウ u う表示你发音时的样子,上嘴唇倾斜,下巴朝上撅,就发出了u.ウ代表一个人 ...

  2. 日语五十音图快速记忆法

    日语五十音图快速记忆法 日语的五十音对于大多数初学者来说都是比较困难的,虽说熟能生巧,但是死记硬背要用去很多时间和精力,效果也不见得好.我觉得比较好的方法就是联想记忆法,这篇文章参考了网上流传的< ...

  3. 【日语五十音图快速记忆法】(看了这个,真的很好记)

    日语五十音图快速记忆法 あ ア a 'あ'看上去像是一个武术高手施展了一个扫堂腿,敌人肯定被扫得冷落花流水,啊的一声倒下去啦,所以读a.'ア'片假名指示出了你发音的样子,嘴巴张开,舌头放到下面,a. ...

  4. 日语五十音图学习笔记

    看完银魂,四月是你的谎言,宫崎骏的系列动画,和新海诚新作你的名字之后,学日语的想法越来越强烈,日语取材于中国的草书,讲道理应该很容易学懂的.于是就开始了日语学习之旅-. 在网上搜索了各种资料,大部分稍 ...

  5. 日语五十音图快速记忆法和搞笑版

    日语的五十音对于大多数初学者来说都是比较困难的,虽说熟能生巧,但是死记硬背要用去很多时间和精力,效果也不见得好.我觉得比较好的方法就是联想记忆法,这篇文章参 考了网上流传的<日语五十音图快速记忆 ...

  6. 如何学好日语五十音图?

    如何学好日语五十音图? 日语的字母称为假名(かな),有平假名(ひらがな)和片假名(かたかな)两种.平假名和片假名是对应的,有多少平假名就有多少片假名.记假名的时候,只需把平假名记住就可以了.片假名以后 ...

  7. 日语五十音图记忆口诀

    为了便于记忆五十音图,本人自己总结了一套记忆口诀,是在明王道老师的基础上总结的. 五十音图速记口诀: a: 阿(ア)分两半耳安(あ)在 i : 伊(イ) 人可以(い) 两分开 u: 眉宇捂(u)上露双 ...

  8. 日语五十音图(带图)

    前言 日语的每个假名代表一个音节(拗音除外),所以属于音节字母.日语的假名共有七十一个,包括清音.浊音.半浊音和拨音.其中表示四十五个清音音节的假名,按照发音规律,可排列成表,这个假名表称为五十音图[ ...

  9. 哈哈日语 五十音图中发音最难的四个假名

    关于五十音图的发音,网上学习资源很多,就不一一解释了.这里只挑五十音图中发音最难把握的4个假名「え」「す」「つ」「ふ」来讲一讲. 首先,「え」(e)的发音,因为中文里有e这个音,所以很多人都会把「え」 ...

最新文章

  1. 2018-11-23随笔
  2. java nextintln_java – 从lambda表达式引用的局部变量必须是final或者有效的final
  3. oracle startup作用,【学习笔记】Oracle打补丁后startup migrate、startup upgrade区别分析...
  4. Python组合数据类型:字典dictionary
  5. celerra(八)--Celerra Replication(下)
  6. 猜拳小游戏(Java代码实现)
  7. 《数据库原理与应用》复习总结
  8. FPN(Feature Pyramid Networks)学习笔记
  9. 网银支付接口编程资料汇总
  10. 程序人生 - 错过等一年!杭州人独属的惠民福利,还有最后三天
  11. a标签下载图片 text
  12. 服务器端口是什么?在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是
  13. H3C防火墙基础配置1-登录配置、安全域配置
  14. 从技术实现到安全运行,工程师版“元宇宙”离我们还有多远?
  15. 谷歌浏览器默认打开搜狗问题
  16. 使用Python爬取豆瓣电影 Top 250
  17. Mac Mojave10.14安装vmvare Fusion 11.0.0 win8 镜像
  18. 洛谷 P2708 硬币翻转 题解
  19. 在Simulink中利用simmechanics对三自由度的串联机械臂进行仿真
  20. 做好外汇资金管理 高效的发挥资金的作用

热门文章

  1. 硬核分享:优化 “Android Studio” 编译速度的10个小技巧
  2. python验证手机号是否注册过微博
  3. Linux基础命令(持续更新中)
  4. 使用BeautifulSoup爬网页指定内容
  5. java实现第七届蓝桥杯平方末尾
  6. mvc html 多行文本框,asp.net-mvc – 如何在MVC3中为多行文本框创建多个编辑器模板?...
  7. 【Google论文】The Google File System 译文
  8. Android AOSP基础(三)Android系统源码的整编和单编
  9. 全极化雷达遥感图像的迭代优化非局部均值去噪法
  10. 248Echarts - 3D 曲面(Parametric Surface Rose)