python 7 迴圈與迭代

2021-08-07 23:43:08 字數 3416 閱讀 8972

判斷

python中if-else語句的多種寫法

a, b, c = 1, 2, 3

1.常規

if a>b:

····c = a

else:

····c = b

2.表示式

c = a if a>b else b

3.二維列表

c = [b,a][a>b]

1,迴圈

for迴圈迭代選取序列元素的三種方式

1.序列項迭代

>>> list1=[1, 2, 3]

>>> for a in list1:

... ····print a

1

2

3

2.序列索引迭代

>>> for x in range(len(list1)):

... ····print list1[x]

1

2

3

3.序列項和序列索引同時迭代

>>> for x,a in enumerate(list1):

... ····print x,a

0 1

1 2

2 3

range()函式的用法

range(start, end, step) #起始值,終止值,步長值

例如:range(6, 2)和range(6, 1)這樣的寫法都是不允許的,因為沒有設定起始值,正確寫法如下:

range(0, 6, 2)和range(0, 6, 1)

迴圈中break的用法

break語句用於結束當前迴圈(如果有多層迴圈時,break僅退出一層迴圈),一般用if語句進行檢查判斷,常用於尋找第乙個出現的值,之後退出

在整個for迴圈中,只要出現break就結束整個迴圈,出現break之後,else當中的內容不會出現,因為這個for迴圈時被中斷的,而else是在for迴圈正常結束之後才執行的內容。

>>> list1=[9, 7, 4, 3, 3]

>>> list2=[1, 2, 4]

>>> x=0

>>> while x < len(list2):

... ····if list2[x] in list1:

... ········print list2[x]

... ········break

... ····x+=1

>>> for x in range(len(list2)):

... ····if list2[x] in list1:

... ········print list2[x]

... ········break

continue語句

當遇到continue語句時,程式會終止當前迴圈,並忽略剩餘語句,然後回到迴圈的頂端;在開始下一次迭代前,如果是條件迴圈,我們將驗證條件表示式;如果是迭代迴圈,我們將驗證是否還有元素可迭代。

>>> l=[1,4,7,4,6,5,4,6]

>>> for a in l:

... ····if a==4:

... ········continue

... ····print a,

1 7 6 5 6#不輸出l當中數值為4的結果

>>> for a in l:

... ····if a!=4:

... ········continue

... ····print a,

4 4 4#僅輸出l當中數值為4的結果

>>> for a in l:

... ····if a!=4:

... ········continue

... ········print a,

不輸出任何結果,因為print a, 是continue語句後面被忽略的內容

pass語句

主要用於佔位,可使if,for及while語句不執行內容;

迴圈中的else語句

在while及for迴圈中,else子句只迴圈完成後執行,也就是說break語句也會跳過else塊,只要for或while迴圈時正常結束的(不是通過break)else子句就會執行

2,迭代

>>> t=(123, 'xyz')

>>> i=iter(t)

>> i

>>> i.next()#123

>>> i.next()#『xyx』

>>> i.next()

stopiteraion

當沒有元素可取時會丟擲乙個stopiteration異常

iter()作為乙個迭代器,把可迭代物件(列表,元組,檔案物件,字典(只是字典的鍵)),放入括號中,作為乙個物件後,利用next()函式,從前向後取出迭代物件中的元素。

字典可以迭代字典的鍵,值或者鍵值對

>>> d=

>>> a=iter(d.items())#迭代鍵值對

>>> a.next()

(1, 2)

>>> iter(d.keys())#迭代鍵

>>> iter(d.values())#迭代值

Python 7 學習筆記

小實驗 實現乙個程式,將分鐘轉為小時和分鐘。在 minutestohours.py 檔案中實現乙個函式hours 將使用者輸入的分鐘數轉化為小時數和分鐘數,並要求小時數盡量大。將結果以xx h,xx m的形式列印出來。要求 import sys 轉換函式 defhours minute 如果為負數則...

python 7 資料結構與型別轉換

python除了前面所說的基礎型別,我們這裡也需要講解下資料結構,資料結構裡面存放的是基礎型別,如數字等同時也可以巢狀。1 list 列表,符號 list 列表 list1 1,xl 1,2 print 列表 type list1 2 tuple 元組,唯讀,不可寫入與修改 tuple 元組,唯讀不...

PYTHON中的語法元素 Python 7

今天給大家介紹一下python中的一些語法元素,跟學其它語言一樣,python也有自己的一些語法規則,做為開發人員,我們要遵循這些規則,開發起來才更加高效。我們用乙個例子說明 tempconcert.py val input 請輸入帶溫度符號的溫度值 如 32c或22f ifval 1 in c c...