这样写是不是跟代码简洁没什么关系了。。
Topic source根据楼上的代码进行了改编,应该简洁了一些
def str2float(string):
sn = [i for i in string if i != '.']
def char2num(s):
return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[s]
def str2int(s):
return reduce(lambda x, y: x * 10 + y, map(char2num, s))
if len(string) == len(sn):
return str2int(sn)
else:
return str2int(sn) * 0.1 ** (len(string)-string.index('.') - 1)
- 1
ericwang_1992