列表推導式
- 列表推導式(有稱列表解析式)提供了一種簡明扼要的方法來創建列表。
- 它可以將循環和條件判斷結合,從而避免語法冗長的代碼,同時提高程序性能。
- 基本格式:
[expression for item in iterable]
>>> n=[2*i for i in [1,2,3,4,5]]
>>> n
[2, 4, 6, 8, 10]
當然也可以用range()實現:
>>> list(range(2,11,2))
[2, 4, 6, 8, 10]
帶條件的列表推導式:
>>> n=[2*i for i in [1,2,3,4,5] if i%2==1]
>>> print(n)
[2, 6, 10]
>>>
```python
>>> n=[i for i in range(1,6) if i%2==1]
>>> print(n)
[1, 3, 5]
求1+1/2+1/3+…+1/20之和:
>>> print(sum([1/i for i in range(1,int(input()))]))
20
3.547739657143682
求1-1/2+1/3-1/4…1/n:
>>> print(sum([1/i if i%2==0 else -1/i for i in range(1,int(input()))]))
20
-0.718771403175428
求6+66+666+…
>>> print(sum([int(i*'6') for i in range(1,int(input())+1)]))
9
740740734