目錄Blog:博客園 個人
- 三元運算式
- 語法格式
- 例子
- 串列推導式
- 語法格式
- 例1
- 例2
- 生成器運算式
- 語法格式
- 例子
三元運算式
語法格式
如下:
為真時的結果 if 判斷條件 else 為假時的結果
例子
name = input('姓名>>: ')
res = '請進' if name == '張三' else '再見'
print(res)
結果如下
姓名>>: 張三
請進
姓名>>: 李四
再見
串列推導式
串列推導式用于使用其他串列創建一個新串列,
語法格式
如下:
# 格式1
[運算式 for 變數 in 串列]
# 格式2,對串列進行判斷帥選
[運算式 for 變數 in 串列 if 條件]
例1
# 求1-9的平方組成的串列
l = [x**2 for x in range(1, 10)]
print(l)
結果如下:
[1, 4, 9, 16, 25, 36, 49, 64, 81]
例2
# 求1-9中偶數的平方組成的串列
l = [x**2 for x in range(1, 10) if x % 2 == 0]
print(l)
結果如下:
[4, 16, 36, 64]
生成器運算式
把串列推導式的[]換成()就是生成器運算式,回傳物件不是一個串列,而是一個生成器,
優點:省記憶體,一次只產生一個值在記憶體中,
語法格式
如下:
# 格式1
(運算式 for 變數 in 串列)
# 格式2,對串列進行判斷篩選
(運算式 for 變數 in 串列 if 條件)
例子
>>> l = (x**2 for x in range(1, 10) if x % 2 == 0)
>>> next(l)
4
>>> next(l)
16
>>> next(l)
36
>>> next(l)
64
>>> next(l)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
StopIteration
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/140466.html
標籤:Python
