python推导式及函数练习

 

from functools import reduce
# 猴子吃桃
sum=[reduce(lambda x,y:(x+1)*2,range(1,(13-j))) for j in range(2,12)]
print(sum)
# 素数
su=[i for i in range(2,101) if 0 not in [i%j for j in range(2,i-1)]]
print(su)
prime=filter(lambda x: not [x%i for i in range(2,x) if x%i==0], range(2,101))
print(list(prime))

#用枚举对坐标和值拆分
from enum import Enum
for index in enumerate(y):
    print(index)
a=[1,2]
b=[4,3]
for i,d1 in enumerate(a):
    for j,d2 in enumerate(b):
        if(i==j):
            print(d1,d2)
for i in zip(a,b):
    print(i)
# 对x转置
x=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
x1=[[i[w] for i in x] for w in range(len(x[0]))]
print(x1)

#求水仙花数
sh=[i for i in range(100,1000) if i==sum(int(j)**3 for  j in str(i))]
print(sh)

#c排列计算
def c(n,m):
    if(n==m):
        return 1
    else:
        def j(n):
            if (n == 1):
                return 1
            else:
                return n * j(n - 1)
    return j(n)/(j(m)*j(n-m))
print(c(4,2))

#打印杨辉三角
def y(t):
    x1=[1]
    x2=[1,1]
    for i in range(t):
        if(i==0):
            print(x1)
        elif(i==1):
            print(x2)
        else:
                x3=[]
                x3.append(1)
                for j in range(1,i):
                    x3.append(x2[j]+x2[j-1])
                x3.append(1)
                x2=x3
                print(x3)
y(9)

#统计大小写字母的个数
def str(*n):
    s,l=0,0
    for i in n:
        if(i.isupper()):
            s+=1
        if(i.islower()):
            l+=1
    return s,l
x=("A","S","d","w","Q")
print(str(*x))

#逆序
def resort(l,k):
    x=l[:k]
    x.reverse()
    y=l[k:]
    y.reverse()
    r=x+y
    return list(reversed(r))
li=list(range(20))
print(resort(li,5))

 

评论 78
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一条coding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值