python 把字符串转化为数字, 例如 '123' 转化为 123 '0.254' 转化为 0.254


题目要求:写一个程序, 把字符串转化为数字, 例如 '123' 转化为 123 '0.254' 转化为 0.254

不允许使用int函数 float函数 eval函数,不允许导入任何模块

 

import sys

chars = {

'0': 0,
'1': 1,
'2': 2,
'3': 3,
'4': 4,
'5': 5,
'6': 6,
'7': 7,
'8': 8,
'9': 9,
}

for arg in sys.argv[1:]:
#print(arg)
if arg.count('.') == 0:
r = 0
for i in arg:
r = r * 10 + chars[i]
print(r)
elif arg.count('.') == 1 and arg.split('.')[0] == '0':
r=0
s = arg.split('.')[1][::-1]
for i in s:
#print(i)
r = r/10 + chars[i]/10
#print(r)
print(r)

 

改程序美中不足的地方:当前没有吧87.23这种数值考虑进去,后期再完善

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM