python练习1227

# 1.求1**2+2**2+3**2+...+9**2的和

 1 #方法1
 2 s = 0
 3 for x in map(pow,range(1,10),[2]*len(range(1,10))):
 4     s +=x
 5 print(s)
 6 # 方法2
 7 def pow2(x):
 8     return x**2
 9 print(sum(map(pow2,range(1,10))))
10 #方法3
11 print(sum(map(lambda s:s**2,range(1,10))))

# 2.求1**3+2**3+3**3+...+9**3的和

#方法1
s=0
for x in map(pow,range(1,10),[3]*len(range(1,10))):
    s+=x
print(s)
# 方法2
def pow3(x):
    return x**3
print(sum(map(pow3,range(1,10))))
#方法3
print(sum(map(lambda s:s**3,range(1,10))))

# 3.求1**9+2**8+3**7+...+9**1的和#11377

#方法1
s = 0
for x in map(pow,range(1,10),range(9,0,-1)):
    s += x
print(s)
# 方法2
print(sum(map(pow,range(1,10),range(9,0,-1))))

 

  

posted @ 2018-12-27 10:07  超级苏小畅  阅读(202)  评论(0编辑  收藏  举报