python - 我是编程的初学者,所以试图编写程序来“在 python 中转换数字”你能检查我下面的代码吗?
问题描述
num=int(input('enter one number'))
units=
{1:'one',2:'two',3:'three',4:'four',5:'five',6:'six',7:'seven',8:'eight',9:'nine',10:'ten',0:'zero',
11:'eleven',12:'tweleve',13:'thirteen',14:'fourteen',15:'fifteen',16:'sixteen',17:'seventeen',18:'eighteen',19:'nineteen'}
tens={2:'twenty',3:'thirty',4:'fourty',5:'fifty',6:'sixty',7:'seventy',8:'eighty',9:'ninety'}
hundreds={1:'one hundred',2:'two hundred',3:'three hundred',4:'four hundred',5:'five hundred',6:'six hundred',7:'seven hundred',8:'eight hundred',9:'nine hundred'}
unitdigit=num%10
tenthdigit=num//10
hundredthdigit=num//100
output=(hundreds[hundredthdigit]+' '+tens[tenthdigit]+' '+units[unitdigit])
print(output)
解决方案
我认为您不需要转换为整数。您可以获取数字的索引,将其转换为整数并获取值:
num=input('enter one number')
units={1:'one',2:'two',3:'three',4:'four',5:'five',6:'six',7:'seven',8:'eight',9:'nine',10:'ten',0:'zero',
11:'eleven',12:'tweleve',13:'thirteen',14:'fourteen',15:'fifteen',16:'sixteen',17:'seventeen',18:'eighteen',19:'nineteen'}
tens={2:'twenty',3:'thirty',4:'fourty',5:'fifty',6:'sixty',7:'seventy',8:'eighty',9:'ninety'}
hundreds={1:'one hundred',2:'two hundred',3:'three hundred',4:'four hundred',5:'five hundred',6:'six hundred',7:'seven hundred',8:'eight hundred',9:'nine hundred'}
unitdigit=num[2]
tenthdigit=num[1]
hundredthdigit=num[0]
output=(hundreds.get(int(hundredthdigit))+' '+tens.get(int(tenthdigit))+' '+units.get(int(unitdigit)))
print(output)
推荐阅读
- css - 无法在scrapy Python中选择带有xpath的按钮
- php - 如何在每次页面刷新时打乱相同等级的数组索引?
- javascript - 跨反应组件使用自定义 api 客户端的惯用方式是什么?
- reactjs - 在draftjs中获取光标的左上角位置
- c# - C# 像 PHP 一样定义数组
- java - 为什么条带中的 TokenCallback 不起作用?
- angular - 具有空格的列值的材料表数据源过滤器
- java - 如何使用附加选项文件覆盖为 Javadoc 明确定义的 Java 源文件?
- swift - 以编程方式定义动态颜色
- java - 在循环中重新创建 ExecutorService 以进行批处理