话不多数直接上代码
# __author__: Super keer
# _data_: 2018/7/26
from functools import reduce
# 上面先导入了一个内置函数包,函数的作用下面有详细介绍
# 这是一个可以让字符型数字转换成,int类型的封装方法,
def run(str):
# 函数里面先定义一个函数将要转换的,字符型数字,逐个转换成,int型
# 这个函数是放在map函数里面的
def myint(strx):
# 这个列表让我们用来比对,字符数字
list = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]
for x in list :
if strx==x :
return list.index(x)
# 这个函数是放在reduce函数,第一个参数里面的
# 它的作用是让map函数生成的,整形数字加在一起
def num(x,y):
return x*10+y
# map 函数可以放两个形参,第一个,放方法,第二个放字符型数字,也就是run()的参数
# map 函数会把第二个参数的每一位,去放在第一个函数里面执行并且返回一个可以遍历的对象
# 我们用strs来接受它,放入reduce函数的第二个参数
strs = map(myint, str)
"""reduce函数和map函数差不多,但是它会让,第二个参数的所有数相加"""
number = reduce(num, strs)
# 返回转换完成的数字和类型,你何以运行run函数,拿一个变量来接受它
return number