Python 将数字从单词转换为数字

Python 将数字从单词转换为数字,python,string,algorithm,sorting,Python,String,Algorithm,Sorting,我需要构建一个函数,将数字的单词表示作为输入,并将其转换为数字1=>1,3602=>3602等。我有数字的上限(999999),我已经做了反向函数。我也有将要使用的所有单词。到目前为止,我一直在想,当数字的不同部分之间没有空格或任何类似的东西时,如何区分数字的每个部分 在python中执行此操作。我没有找到任何合理的方法来使用find()使用以下代码: def int2word(数字): def num2word(num): n=[“一”, “两个”, “三”, “四个”列表 “五个”, “六”

我需要构建一个函数,将数字的单词表示作为输入,并将其转换为数字
1=>1
3602=>3602
等。我有数字的上限
(999999)
,我已经做了反向函数。我也有将要使用的所有单词。到目前为止,我一直在想,当数字的不同部分之间没有空格或任何类似的东西时,如何区分数字的每个部分

在python中执行此操作。我没有找到任何合理的方法来使用
find()

使用以下代码:

def int2word(数字):
def num2word(num):
n=[“一”,
“两个”,
“三”,
“四个”列表
“五个”,
“六”,
“七”,
“八”,
“九”,
“十”,
“十一”,
“十二”,
“十三”,
“十四”,
“十五”,
“十六”,
“十七”,
“十八”,
“十九”]
十=[“二十”,
“三十”,
“四十”,
“五十”,
“六十”,
“七十”,
“八十”,
“九十”,
]
如果num==0:
返回“”
范围(1,19)内的elif num:#对于0-19号
返回(n[num-1])
elif num在(20,99)范围内,num%10==0:#对于10的倍数为20-99的编号
返回(十[num//10-2])
elif数值在范围(20,99)内,数值%10>0:
返回(十[num//10-2]+“-”+n[num%10-1])
result=“”
如果数字==0:
结果=“零”
其他:
c=数量//10000000
如果c!=0:
crores=num2word(c)
结果+=百万美元+“百万美元”
l=编号%10000000
如果我//100000!=0:
lakh=num2字(l//100000)
结果+=10万+“10万”
th=数量%100000
如果th//1000!=0:
thos=num2字(th//1000)
结果+=thos+“千”
h=数量%1000
如果h//100!=0:
huns=num2字(h//100)
结果+=匈奴人+“百”
t=h%100
如果t!=0:
十位数=num2字(t)
结果+=十
返回结果

您必须自己编写代码吗?(请参阅。)如果是,请更具体地说明您在实现中遇到的困难(发布相关代码)。还有一种选择。