交作业
Topic source第三题精简了一下:
def str2float(s):
"""字符串转浮点型"""
def char2num(c):
"""字符转数字"""
digists = {'0':0, '1':1, '2':2, '3':3, '4':4, '5':5, '6':6, '7':7, '8':8, '9':9}
return digists[c]
s_split = s.split('.')
pro_num = profix_num(map(char2num, s_split[0])) # 获得整数部分
sub_num = subfix_num(map(char2num, s_split[1][::-1])) # 获得小数部分
return pro_num + sub_num
第三题, 上面精简坏了, 实际上还是第一个好, 没必要把代码写那么复杂:
def str2float(s):
"""字符串转浮点型"""
def char2num(c):
"""字符转数字"""
digists = {'0':0, '1':1, '2':2, '3':3, '4':4, '5':5, '6':6, '7':7, '8':8, '9':9}
return digists[c]
s_split = s.split('.')
pro_num = reduce(lambda x, y: x * 10 + y, map(char2num, s_split[0])) # 获得整数部分
sub_num = reduce((lambda x, y: x * 0.1 + y) * 0.1, map(char2num, s_split[1][::-1])) # 获得小数部分
return pro_num + sub_num
第一题
def normalize(name): return str.lower(name)L1 = ['adam', 'LISA', 'barT']L2 = list(map(normalize, L1))print(L2)
- 1
回风哥哥
第一题:
第二题:
第三题: