當前位置:首頁 » 編程語言 » pythonxforxin

pythonxforxin

發布時間: 2023-07-14 15:57:08

1. python for 語句的使用方法

Python 中的 for 語句和 C 或 Pascal 中的略有不同。通常的循環可能會依據一個等差數值步進過程(如 Pascal),或由用戶來定義迭代步驟和中止條件(如 C ),Python 的 for 語句依據任意序列(鏈表或字元串)中的子項,按它們在序列中的順序來進行迭代。例如(沒有暗指):
>>> # Measure some strings:
... words = ['cat', 'window', 'defenestrate']
>>> for w in words:
... print(w, len(w))
...
cat 3
window 6
defenestrate 12
在迭代過程中修改迭代序列不安全(只有在使用鏈表這樣的可變序列時才會有這樣的情況)。如果你想要修改你迭代的序列(例如,復制選擇項),你可以迭代它的復本。使用切割標識就可以很方便的做到這一點:

2. python _ x for x in x

鏈表推導式

鏈表推導式提供了一個創建鏈表的簡單途徑,無需使用 map(), filter() 以及 lambda。返回鏈表的定義通常要比創建這些鏈表更清晰。每一個鏈表推導式包括在一個for語句之後的表達式,零或多個for或if語句。返回值是由for或if子句之後的表達式得到的元素組成的鏈表。如果想要得到一個元組,必須要加上括弧。

>>> freshfruit = [' banana', ' loganberry ', 'passion fruit ']
>>> [weapon.strip() for weapon in freshfruit]
['banana', 'loganberry', 'passion fruit']
>>> vec = [2, 4, 6]
>>> [3*x for x in vec]
[6, 12, 18]
>>> [3*x for x in vec if x > 3]
[12, 18]
>>> [3*x for x in vec if x < 2]
[]
>>> [[x,x**2] for x in vec]
[[2, 4], [4, 16], [6, 36]]
>>> [x, x**2 for x in vec] # error - parens required for tuples
File "<stdin>", line 1, in ?
[x, x**2 for x in vec]
^
SyntaxError: invalid syntax
>>> [(x, x**2) for x in vec]
[(2, 4), (4, 16), (6, 36)]
>>> vec1 = [2, 4, 6]
>>> vec2 = [4, 3, -9]
>>> [x*y for x in vec1 for y in vec2]
[8, 6, -18, 16, 12, -36, 24, 18, -54]
>>> [x+y for x in vec1 for y in vec2]
[6, 5, -7, 8, 7, -5, 10, 9, -3]
>>> [vec1[i]*vec2[i] for i in range(len(vec1))]
[8, 12, -54]
為使鏈表推導式匹配for循環的行為,可以在推導之外保留循環變數:

>>> x = 100 # this gets overwritten
>>> [x**3 for x in range(5)]
[0, 1, 8, 27, 64]
>>> x # the final value for range(5)

摘自
Python handbook
Guido van Rossum
Fred L. Drake, Jr., editor

3. Python列表推導式{x for x in range(10) if x % 2 != 0}

它就是循環的簡寫。只是書寫的差異,效果是一樣的,圖中的兩種寫法效果是一樣的

4. python中for循環與else,while循環與else

for 變數 in 序列:

    循環體else:

    語句塊

執行過程:

先執行for循環,循環正常結束則執行else下面的語句塊,

否則不執行

for xin range(100):

if x ==50:

pass

    print(x)

else:

print("正常執行結束")

print("over")

while 判斷條件:

    循環體else:

    語句塊

執行過程:循環正常結束之後[未使用break跳出循環],會執行else語句

若是非正常執行結束,則跳過else語句

i =0

while i <=100:

i +=1

    if i ==50:

# break

# continue

        pass

    print(i)

else:

print("over")

在python中,與if分支語句不同的是,for循環與while循環正常執行完畢後,才會執行else語句。否則不執行。

5. python關於for循環的幾個函數

range

6. python中的for in的相關問題

A.因為已經引入了sqrt函數,如果在自己的空間中執行 sqrt=1 '把sqrt當成了一個變數,再運行sqrt(4)會出錯
例子中 exec運行代碼 在Scope空間中 sqrt是個變數,賦值1,如果沒有in scope,那麼exce運行空間就是本空間,再次sqrt(4)就會出錯。

對比:
a=1234
exec 'a=4321'
a
4321
和代碼:
a=1234
b={}
exec 'a=4321' in b
a
1234

B:print [x*x for x in range(10) if x % 3 == 0]

這里range(10)產生0,1,2~8,9 這10個數字
後面添加了條件x % 3 ==0,就是判斷 x除以3的余數 等於0, 篩選出0、3、6、9
傳遞給x*x,就產生了一個列表:[0,9,36,81]

熱點內容
androidlayoutview 發布:2025-02-08 15:45:01 瀏覽:619
大貨車有哪些安全應急配置 發布:2025-02-08 15:44:55 瀏覽:535
安卓手機下黎明殺機為什麼會閃退 發布:2025-02-08 15:38:27 瀏覽:488
定位演算法源碼 發布:2025-02-08 15:36:43 瀏覽:542
上游伺服器異常什麼意思 發布:2025-02-08 15:15:46 瀏覽:175
如何下載油猴腳本並安裝 發布:2025-02-08 15:02:12 瀏覽:596
硬體哪個配置性價比高 發布:2025-02-08 14:47:07 瀏覽:146
如何去掉僅限自動配置 發布:2025-02-08 14:37:55 瀏覽:708
壓縮空氣有啥 發布:2025-02-08 14:26:01 瀏覽:704
python輸入一個數 發布:2025-02-08 14:26:00 瀏覽:451