mud_jy 板


LINE

这个是刚好看到Mushclient有支援Python的script,闲闲无事拿来玩玩看的成果, 理论上是没有bug啦,有的话请和我说,我再修修看,目前还是弱弱的Python新手。 说明: 一、__init__底下宣告的对应数字使用dict有更漂亮的写法,刚开始写的时候没想 到,写完了才想起来,所以就懒得改了。 二、纯练Python用,很多地方的逻辑绕很多圈或是有多余的宣告,请鞭小力一点:p =================================Code==================================== import os,sys class chs2num: def __init__(self): self.money = None self.total = 0 self.num = 0 self.hunmillion = 100000000 self.tenthousand = 10000 self.thousand = 1000 self.hundred = 100 self.ten = 10 self.one = 1 self.two = 2 self.three = 3 self.four = 4 self.five = 5 self.six = 6 self.seven = 7 self.eight = 8 self.nine = 9 self.zero = 0 self.curnum = 0 def tonum(self, money): self.money = money.decode('utf-8') for self.num in range(0, len(self.money)): world.Note(self.money[self.num]) if self.money[self.num] == u"一": self.curnum = self.one world.Note(self.curnum) elif self.money[self.num] == u"二" or (self.money[self.num] == u"两" and self.num != (len(self.money) - 1)): self.curnum = self.two elif self.money[self.num] == u"三": self.curnum = self.three elif self.money[self.num] == u"四": self.curnum = self.four elif self.money[self.num] == u"五": self.curnum = self.five elif self.money[self.num] == u"六": self.curnum = self.six elif self.money[self.num] == u"七": self.curnum = self.seven elif self.money[self.num] == u"八": self.curnum = self.eight elif self.money[self.num] == u"九": self.curnum = self.nine elif self.money[self.num] == u"零": self.curnum = self.zero elif self.money[self.num] == u"十": if self.curnum == 0: self.total = self.total + self.ten else: self.total = self.total + self.curnum * self.ten self.curnum = 0 elif self.money[self.num] == u"百": self.total = self.total + self.curnum * self.hundred self.curnum = 0 elif self.money[self.num] == u"千": self.total = self.total + self.curnum * self.thousand self.curnum = 0 elif self.money[self.num] == u"万": if self.curnum == 0: self.total = self.total * self.tenthousand else: self.total = (self.total + self.curnum) * self.tenthousand self.curnum = 0 elif self.money[self.num] == u"亿": if self.curnum == 0: self.total = self.total * self.hunmillion else: self.total = (self.total + self.curnum) * self.hunmillion self.curnum = 0 if self.num == (len(self.money) - 1): if self.curnum < 10 and self.curnum > 0: self.total = self.total + self.curnum return self.total --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 112.104.181.23
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/mud_jy/M.1442514149.A.0BC.html
1F:→ laechan: 你还可以增加一个"两"的额外转换 09/19 16:20
谢谢,已修改。 想法:语法上「两」不会出现在个位数和十位数,因此十位数可以忽略,如果真的出现在 十位数前,亦可判别出来,至於个数位考虑字串误抓单位的的可能,所以排除掉, 若真的也出现在个位数,那只要把and以及and之後的判断式拿掉就好了。 ※ 编辑: rsliang (112.104.181.23), 09/21/2015 19:31:25







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP