python练习

题1: 求1+2!+3!+...+20!的和
t = 0
for i in range(1, 21):
    x = reduce(lambda x , y: x*y, range(1, i+1))
    t += x
print t

题2:递归法求阶乘n!

def Factorial(n):
    if n == 1 or n == 0:
        return 1
    else:
        return n*Factorial(n-1)
题3:列表反转
<pre name="code" class="python">法1:for i in range(len(L)-1,-1,-1):
    print L[i],


 
法2:print L[::-1]
例4: 一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

for j in range(2,1001):
    k = []
    n = -1
    s = j
    for i in range(1,j):
            if j % i == 0:
                n += 1
                s -= i
                k.append(i)

    if s == 0:
        print j
        for i in range(n):
            print (str(k[i])),
        print k[n]

例5:排序

L = [4, 8, 3, 5, 6, 9, 1, 2, 7, 0]
for i in range(10):
    m = i
    for j in range(i+1, 10):
        if L[m] > L[j]:
            m = j
    L[i], L[m] = L[m], L[i]
print L

例6:求一个字符串最后一个单词的长度

data = raw_input("")
print len(data.split()[-1])







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值