美文网首页
2019-02-17 Python 中文数字转阿拉伯数字

2019-02-17 Python 中文数字转阿拉伯数字

作者: Formatfa | 来源:发表于2019-02-17 09:57 被阅读0次

    实现以下转换

    一百二十二 122

    三千二百 3200

    chinese=["三十二","十","九","四百二十二","一百零五","十","七千","三千二百五十五"]

    def tonumber(chi):

    pass

        sum =0

        #把中文数字转换为整数

        table =str.maketrans('一二三四五六七八九','123456789')

    #遇到十,百,千这些之前

        temp =1

        for chrin chi:

    #print(chr)

            if chr=="十":

    sum+=(temp*10)

    print("加:"+str(temp*10))

    #最后一个,如果是一百,后面没东西了,赋值为-1,这样在后面就不用加temp了

                temp=-1

                pass

            elif chr=="百":

    sum += (temp *100)

    print("加:" +str(temp *100))

    temp = -1

                pass

            elif chr=='千':

    sum += (temp *1000)

    print("加:" +str(temp *1000))

    temp = -1

            elif chr=='零':

    pass

                temp = -1

            else:

    #遇到数字先保存起来到temp,在判断下一个,如果下一个是十百千,上面会对应加上

                temp=int( chr.translate(table))

    print("获取temp:",temp)

    pass

        #最后一位数字

        if temp !=-1:

    sum+=temp

    return sum

    if __name__=="__main__":

    for chiin chinese:

    print(chi,"->",tonumber(chi))

    相关文章

      网友评论

          本文标题:2019-02-17 Python 中文数字转阿拉伯数字

          本文链接:https://www.haomeiwen.com/subject/zzaweqtx.html