Python基礎知識學習(四)

2021-08-21 03:13:18 字數 1657 閱讀 7570

(1)遍歷列表

list1 = [('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz')]

for x in list1:

print(x)

輸出結果:  ('今天', '天氣很好')

('123', '456')

('abc', 'xyz')

接下來,我們進一步遍歷

注意:這種方法只能適用於 元素的格式和數量都相同時 

以這段**為例,上次遍歷之後格式都為:(x,y),所以可以再次遍歷,

如果有乙個元素為(x),則此方法不再適用

for x, y in list1:      

print(x, y)

輸出結果: 今天  天氣很好

123  456

abc  xyz

我們可以加入索引值進行遍歷,這裡我們使用了enumerate函式

for i, x in enumerate(list1):

print(i, x)

輸出結果:0  ('今天', '天氣很好')

1  ('123', '456')

2  ('abc', 'xyz')

其中 0 ,1 ,2 為索引值

我們可以再次遍歷,

for i, (x, y) in enumerate(list1):    注意:這裡的x和y有括號,格式要保持一致

print(i, x, y)

輸出結果:0  今天  天氣很好

1  123  456

2  abc  xyz

1.新增,可以新增元素,也可以新增列表

extend函式:將引數列表中的每乙個元素都新增到指定列表中,引數不能為int型別

如果引數為string型別,則會把引數分解成char型別新增到指定列表中

list1 = [('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz')]

list2 = [['a'], ['b'], ['c']]

print(list1)

輸出結果:[('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz'), [['a'], ['b'], ['c']]]

這裡是以列表的形式作為乙個元素

extend函式:

list1 = [('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz')]

list2 = [['a'], ['b'], ['c']]

list1.extend(list2)

print(list1)

輸出結果:[('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz'), ['a'], ['b'], ['c']]

這裡是把引數列表裡的元素新增過來

當新增引數為string型別時,extend函式會把string型別轉換為char型別進行新增

list1 = [('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz')]

list1.extend('today')

print(list1)

輸出結果:[('今天', '天氣很好'), ('123', '456'), ('abc', 'xyz'), 't', 'o', 'd', 'a', 'y']

python基礎知識(四)

函式 基本形式 def greet print hello greet 輸出結果 hello 傳遞引數 def greet name print hello name greet xiao ming 輸出結果 hello xiao ming 形參與實參 形參是函式引數列表中宣告的引數 實參是實際傳遞...

python基礎知識(四)

關於編碼的問題 in python3中 對於英文 數字 utf8 1個bytes 位元組 對於乙個字元 對於中文 unicode 3個bytes 位元組 對應乙個字元 encode 編碼 將unicode形式轉化為utf 8等其他形式 decode 解碼 將utf 8等其他形式轉化為unicode形...

python基礎知識 四 函式

def 函式名 pass 區域性變數和全域性變數 var 1 def fun print var var 200 print fun 函式fun 中給var賦值,說明var已經不是全域性變數了,所以在賦值之前想輸出var是錯誤的。globals是宣告全域性變數,globals 是輸出全域性變數 re...