- 循環(huán)技巧
- for循環(huán)完了之后,for和in之間的變量是保留的
- 普通循環(huán)
<pre>
color = {"red": 1, "green": 2, "blue": 3}
color
{'green': 2, 'blue': 3, 'red': 1}
for c in color:
... print(c, color[c])
...
green 2
blue 3
red 1
</pre>
- key,value循環(huán)
<pre>
for k,v in color.items():
... print(k, v)
...
green 2
blue 3
red 1
</pre>
- 索引式循環(huán)
<pre>
color_list = ["red", "green", "blue"]
color_list
['red', 'green', 'blue']普通循環(huán)
for c in color_list:
... print(c)
...
red
green
blue索引循環(huán)方式1
for c in range(len(color_list)):
... print(c, color_list[c])
...
0 red
1 green
2 blue索引循環(huán)方式2,通過enumerate函數(shù)
for i,v in enumerate(color_list):
... print(i, v)
...
0 red
1 green
2 blue
</pre>
- 比較控制
- in和not in將判斷一個(gè)值是否存在于一個(gè)序列中
- 比較操作可以傳遞,例如
a < b == c審核是否 a 小于 b 并且 b 等于 c。 - 比較操作可以通過邏輯操作符 and 和 or 組合,比較的結(jié)果可以用 not 來取反義。這些操作符的優(yōu)先級又低于比較操作符,在它們之中,not 具有最高的優(yōu)先級, or 優(yōu)先級最低
所以:A and not B or C==(A and (notB)) or C - 短路操作符
- 語法:表達(dá)式 操作符 表達(dá)式2
- 注釋:系統(tǒng)將從左到右解讀,一旦結(jié)果可以確定就停止
- and ,例如
1 and 2,左右兩邊都為True則返回右邊的表達(dá)式結(jié)果,其中一個(gè)為False,則返回該表達(dá)式結(jié)果 - or ,例如
input("Please:") or "default",左右兩邊表達(dá)式只要其中一個(gè)為True,則返回該表達(dá)式結(jié)果
- 比較序列
- 列對象可以與相同類型的其它對象比較。比較操作按 字典序 進(jìn)行:首先比較前兩個(gè)元素,如果不同,就決定了比較的結(jié)果;如果相同,就比較后兩個(gè)元素,依此類推,直到所有序列都完成比較。
<pre>
- 列對象可以與相同類型的其它對象比較。比較操作按 字典序 進(jìn)行:首先比較前兩個(gè)元素,如果不同,就決定了比較的結(jié)果;如果相同,就比較后兩個(gè)元素,依此類推,直到所有序列都完成比較。
(1, 2, 3) < (1, 2, 4)
True
[1, 2, 3] < [1, 2, 4]
True
[1, 2, 3, 4] < [1, 2, 4]
True
(1, 2) < (1, 2, -1)
True
(1, 2, 3) == (1.0, 2.0, 3.0)
</pre>
* 如果一個(gè)序列是另一個(gè)序列的初始子序列,較短的一個(gè)序列就小于另一個(gè)
<pre>
"abc" < "c"
True
</pre>