python编程-从入门到实践读后感,初学python的体会心得

  python编程:从入门到实践读后感,初学python的体会心得

  作为一个南方人,拼音学得不好似乎是很正常的。惊艳的声音和鼻音,近几年终于有些清晰了。但尴尬的事情还在继续。发邮件的时候,总有几个单词拼错;说话的时候,绕不开舌头,忘不了鼻音.我很担心,我有一个用SuperMemo强化拼音的训练计划。

  要实现这个方案,必须满足两个条件。一个选定的汉字范围是——个,一级国标有3700多个汉字。其次,要求通过编程将这些汉字转换成拼音,使拼音有声调。这需要对转换向导进行适度的转换。

  根据hzqghost(jkdfk)的童鞋代号,做了如下修改。

  部分代码采用了这个码表。下载到

  当源代码是python2.x时,转换成python。

  3.x

  最后加了一部分音码,原码有一些错误,引起了傻大姐的注意,不愿意修复这个错误。

  以下是相关代码的一部分,分步讲解。

  1.读取秒表并将其转换为dict:

  文件名=。/Mandarin.dat

  self.dict={}

  Forlineinopen(文件名):

  k,v=line.split((\t)).

  自我字典[k]=v

  2.然后处理输入的中文字符串:

  self.yunmu=(ang , eng , ing , an , in , un , ai , ao , ou

  self.sheng={a :、 o : e :、 I : e :

  结果=[]

  对于chars中的char:# chars是繁体中文字符串。

  Key=%x%ord(char))将中文字符转换成utf16码,并在码表文件中使用此码。

  尝试:

  Py=self.dict [key]。拆分(“”)[0]。脱衣)。lower) #只取检测到的拼音的第一个值,将结果转换成小写。

  对于ym在self.yunmu:

  Ifre.search(ym,py) :# match

  py=getpy(py,ym)).

  Break#只取第一个结果

  结果追加(py)

  除了:

  结果.追加(字符)

  返回“”。join(结果))).

  原来的self.yunmu设定不合理。遇到 ui , iu , ie , ue 四个韵母时,在第一个字符上标注声调,从元组中去掉 ui , ie , ue 三个值。这样匹配时,根据A和O,后面的getPy中需要对 iu 的final进行特殊处理。

  3.在一致的最后标出基调:

  defgetpy(py,ym):

  T=py[-1:]。encode(ascii,)、ignore),)码表)返回的拼音串最后一位是数字,表示声调值。

  T2=%d%ord(t)))

  T3=(国际)T2 )- 48 ) %4 -1

  Py=py [:-len (ym)-1] #首字母

  If if ym==iu:#最后是iu

  Letter=self.sheng [ym [1]。拆分[] [t3] #声调字符用u填充。

  Ym=ym[0]字母

  否则:

  Letter=self.sheng [ym [0]。split [] [t3] #在其他情况下,空格会附加到第一个字符。

  ym=字母ym[1:]

  py=py2 ym

  返回py

  最终代码如下。

  De fcn代码(自身,字符):

  defgetpy(py,ym):

  T=py[-1:]。encode(ascii,)、ignore),)码表)返回的拼音串最后一位是数字,表示声调值。

  T2=%d%ord(t)))

  T3=(国际)T2 )- 48 ) %4 -1

  Py=py [:-len (ym)-1] #首字母

  If if ym==iu:#最后是iu

  Letter=self.sheng [ym [1]。拆分[] [t3] #声调字符用u填充。

  Ym=ym[0]字母

  否则:

  Letter=self.sheng [ym [0]。split [] [t3] #在其他情况下,空格会附加到第一个字符。

  ym=字母ym[1:]

  py=py2 ym

  返回py

  文件名=。/Mandarin.dat

  self.dict={}

  Forlineinopen(文件名):

  k,v=line.split((\t)).

  自我字典[k]=v

  self.yunmu=(ang , eng , ing , an , in , un , ai , ao , ou

  self.sheng={a :、 o : e :、 I : e :

  结果=[]

  对于chars中的char:# chars是繁体中文字符串。

  Key=%x%ord(char))将中文字符转换成utf16码,并在码表文件中使用此码。

  尝试:

  Py=self.dict [key]。拆分(“”)[0]。脱衣)。lower) #只取检测到的拼音的第一个值,将结果转换成小写。

  对于ym在self.yunmu:

  Ifre.search(ym,py) :# match

  py=getpy(py,ym)).

  Break#只取第一个结果

  结果追加(py)

  除了:

  结果.追加(字符)

  返回“”。join(结果))).

  通话时,仅此而已:

  Chars=不愿去英国魔术学院

  打印(self.cn代码(字符))

  结果如下图所示。

  而现在的文字通常是朗读,用换行符分割,一个一个输入得到拼音,最后拼成tab文字。这样,您可以使用转换向导来创建课程。这里就不重复细节了。

  附上最后一道菜:

  本文版权归英国魔法学院所有。欢迎转载。转载请注明作者和出处。谢谢大家!

  作者:不要犹豫,开始@学习能力博客

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: