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...
-
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))
文章来源: blog.csdn.net,作者:一条coding,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/skylibiao/article/details/81777605
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)