第一题作业,有点蒙
Topic source第二题,不会用lambda啊
from functools import reduce
def prod(x,y):
return x*y
L=[3,5,7,9]
r=reduce(prod,L)
print(r)
格式也不像教程里给的那样是prod(L),我还没想明白……
大家都好厉害啊……只能抄抄改改了
from functools import reduce
def str2float(s):
n=0
try:
n=len(s)-s.index('.')-1
s=s[:s.index('.')]+s[s.index('.')+1:]
except:
pass
def fn(x,y):
return x*10+y
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]
w=reduce(fn,map(char2num,s))/pow(10,n)
return w
print(str2float(input('Please enter a number:')))
- 1
我会掏鸟蛋啊
其实python里面有个函数captitalize可以实现这个功能,我先偷个懒:
然而,当我改成map后:
输出竟然变成了这样:
求解……