Discuss / Python / 作业开始有点难度了……

作业开始有点难度了……

Topic source

1)切片操作返回list,不存在越界问题(“越界”返回“[]”)

def normalize(name): name = name[0].upper() + name[1:].lower() return name

2)

def prod(L): if len(L) == 0: return None else: return reduce(lambda x, y: x * y, L)

3)[::-1]返回逆序字符串,如a=“python”,a[: : -1]=“nohtyp”

def str2float(s): n = s.split('.') n1 = reduce(lambda x, y : x * 10 + y, map(char2num, n[0])) n2 = reduce(lambda x, y : x / 10 + y, map(char2num, n[1][::-1])) / 10 return n1 + n2 DIGITS = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}

def char2num(s): return DIGITS[s]


  • 1

Reply