Python核心程式設計學習筆記(五)

2021-08-21 03:55:40 字數 2999 閱讀 8760

for 語句

作用:用來遍歷可迭代物件的資料元素

可迭代物件是指能依次獲取資料物件的元素

可迭代物件包括:

字串str

列表list、字典dict、集合set、range函式返回的物件等

語法:for 變數列表 in  可迭代物件:

語句塊1

else:

語句塊2

range 函式

格式:見help(range)

作用:整數序列生成器

range(stop)

從零開始,每次生成乙個整數後加1操作,直到stop為止

range(start,stop[,step])

從start開始,每次生成乙個整數後移動step,直到stop為止

(不包含stop,且step可以為負數)

for迴圈的注意事項:

for 語句的巢狀

示例:for x in 『abc』:

for y in 『123』:

print(x + y)

例:輸入整數n,列印乙個正方形。如:輸入5

#      1 2 3 4 5

#      2 3 4 5 6

#      3 4 5 6 7

#      4 5 6 7 8

#      5 6 7 8 9

# n=int(input('輸入乙個整數:'))

# for line in range(n):

#     for i in range(line+1,line+1+n):

#         print('%02d' % i,end=' ')

#     print()

continue語句

用於迴圈語句(while,for語句)中,不再執行本次迴圈continue之後的語句,

重新開始新一輪的迴圈

說明:1.在for語句中執行continue語句,將會從可迭代物件中取下一元素,

繫結變數後再次開始執行

2. 在while語句中執行continue語句,將直接跳到while語句中的真值表示式處,

重新判斷迴圈條件。(控制迴圈條件變數的增減要放到continue前,否則容易出現死迴圈)

迴圈語句總結

while語句

可用於死迴圈

for語句

用於可迭代物件的迴圈

break語句

用於終止當前迴圈

continue語句

用於開始一次新的迴圈

列表list

列表是一種容器

列表是序列的一種

列表是可以改變的序列

列表中由一系列特定元素組成的,元素與元素之間可以沒有任何的關聯關係,但他們之間有先後順序關係

建立空列表的字面值

l=建立非空列表的字面值

l=[1,2,3,4]

l=[『beijing』,』shanghai』,』shenzhen』]

l=[『1』,』two』,3.14,』四』]

l=[1,2,[3.1,3.2,3.3],4]  #巢狀列表

列表的建構函式list

list()

生成乙個空的列表,等同於

list(literable)   用可迭代物件建立乙個列表

示例:l=list()            #繫結空列表

l=list(「hello」)     #繫結[『h』,』e』,』l』,』l』,』o』]

l=list(range(1,5))  #繫結[1,2,3,4]

列表的運算:

列表的算數運算:+  +=  *  *=

+  用於拼接列表

x = [1,2,3]

y = [4,5,6]

z = x + y        # z = [1,2,3,4,5,6]

+=  用原列表與右側列表拼接,用變數繫結拼接後的列表

x = [1,2,3]

x += [4,5,6]

print(x)

*  生成重複的列表

x = [1,2] * 3    # x = [1,2,1,2,1,2]

*=  

列表的比較運算:<  <=  >  >=  ==  !=

比較運算同字串的規則相同

x = [1,2,3]

y = [1,2,4]

x != y       #true

x <= y       #true

[『ab』,』abc』,』123』] < [『ab』,』123』,』abc』]  #false

列表的in 和 not in 運算子

作用:判斷乙個值是否存在與列表中。如果存在返回true,否則返回false

not in 返回值與in 相反

示例:2   in [1,2,3,4]           #true

』2』  in [1,2,3,4]           #false

列表是可迭代物件:

for x in [2,3,4,5]:

print(x)

例:輸入任意行文字,存於列表l中,當不輸入任意內容,回車後退出

#列印l列表的內容

#計算你共輸入幾行內容

#計算你共輸入了多少字元

l=count=0

sum=0

while true:

str=input("請輸入:")

if not str:  

#輸入為空,not str==true,跳出迴圈

break

count+=1      

#計算輸入的行數

l+=[str]      

sum+=len(str)

#計算輸入的字元數

print("列表的內容為",l)

print("輸入的行數為",count)

print("輸入的字元數為",sum)

Python核心程式設計學習筆記(十一)

31 range 內建函式 1 range 的完整語法,要求提供兩個或三個整數引數 range start,end,step 1 range 會返回乙個包含所有k的列表,這裡start k end,從start到end,k每次遞增step。step不可以為零,否則將發生錯誤。range 2,19,3...

Python核心程式設計學習筆記(八)

集合set 集合是可變的容器 集合內的資料物件都是唯一的 不能重複多次 集合是無序的儲存結構,集合中的資料沒有先後順序關係 集合內的元素必須是不可變的物件 不能放列表字典 字典等可變物件 集合是可迭代物件 集合是相當於只有鍵,沒有值的字典 鍵則是集合的資料 建立空的集合 set 建立非空集合 s 集...

python核心程式設計筆記

1 賦值並不是直接將乙個值賦給乙個變數,儘管你可能根據其它語言程式設計經驗認為應該如此。在python 語言中,物件是通過引用傳遞的。在賦值時,不管這個物件是新建立的,還是乙個已經存在的,都是將該物件的引用 並不是值 賦值給變數。一切皆為物件。python 的賦值語句不會返回值,但可以鏈式賦值。x ...