本文共 945 字,大约阅读时间需要 3 分钟。
列表生成式也叫列表解析,格式如下:#[expression for i in 序列 if...]
例子:
s = '51 5000 10000'li = []for item in s.split(): li.append(int(item))print(li)k,a,b = liprint(k,a,b)
上面这个代码我们可以用列表表达式将其重新表达出来:
s = '51 5000 10000'li = [int(item) for item in s.split()] #列表表达式print(li)k,a,b = liprint(k,a,b)
案例一:
输出[1
**
1的结果, 2**
2的结果 … 9**
9的结果]
第一种普通方法:
li = []for i in range(1,10): li.append(i ** i)print(li)
print([i ** i for i in range(1,10) ])
print([i ** i for i in range(1,10) if i % 2 == 0 ])
找出1——10之间所有偶数,并且返回一个列表(包含以这个偶数为半径的圆的面积)
import mathprint(math.pi) #圆周率print([math.pi * r * r for r in range(2,11,2)])
找出1~n之间所有的质数
num = int(input("请输入一个数字:"))def isPrime(num): for i in range(2,num): if num % i == 0: return False else: return Trueprint([i for i in range(2,num) if isPrime(i)])
print({i ** 2 for i in {1,2,3,3}})print({i ** 2 for i in {1,2,3,9,12,9} if i % 3 == 0 })
转载地址:http://vajvb.baihongyu.com/