學習Python的第四天 列表生成式

2021-09-24 18:38:30 字數 1089 閱讀 4715

今天打算開始更換寫部落格的風格,開始以不同的功能來寫不同的部落格,這樣可以方便大家學習交流。學習是通過廖雪峰的**學習的:

在生成乙個1~10的列表的時候,最基礎的方法是list = [1,2,3,4,5,6,7,8,9,10],但如果知道列表生成器,就可以使用:list = list(range(1,11))

如果要生成乙個[11,22,33…1010]的列表,最基礎的可以使用for語句:

l = 

for x in range(1,11):

這樣的方法明顯過於麻煩,而利用列表生成器,就可以這麼寫:

l = [x*x for x in range(1,11)]
for 以後還可以增加條件,從而適應不同情況的使用:

l = [x*x for x in range(1,11) if x % 2 == 0]

#這時列表將為:[4, 16, 36, 64, 100]

使用兩層迴圈:

l = [m+n for m in 'abc' for n in 'def']

#這時列表將為:['ad','ae','af','bd','be','bf']

for迴圈可以同時使用兩個甚至多個變數:

d = 

for k,v in d.items()

print(k,'=',v)

'''將輸出:

a = a

b = b

c = c

'''

順便提乙個操作,是讓所有的字元變成小寫的:

.lower()

如:

l = ['string']

print(l) 輸出將為:['string']

str = [s.lower() for s in l]

print(str) 輸出將為:['string']

但是當列表中有非字串型的型別時,這個lower方法不可用,一旦使用,會報錯。然後判斷是否為字串可以使用函式「isinstance」,格式為:isinstance(要判斷的資料,資料型別)

學習python第四天 列表方法

2 clear 用於列表元素清除,釋放記憶體 字面意思複製,拷貝分為淺拷貝和深拷貝,copy 方法屬於列表深拷貝。深拷貝和淺拷貝抄自其他網頁 我們對3種可變型別3種不可變型別進行深拷貝。結果發現,和淺拷貝幾乎一致。其實這也好理解,因為的深拷貝對比淺拷貝,強調的是 遞迴,強調的是資源素。對了頂層的操作...

學習python 第四天

python 迴圈結構 迴圈結構可以輕鬆的控制某件事重複 再重複的發生。在python中構造迴圈結構有兩種做法,一種是for in迴圈,一種是while迴圈。for in迴圈 如果明確的知道迴圈執行的次數或者是要對乙個容器進行迭代 後面會講到 那麼我們推薦使用for in迴圈 用for迴圈實現1 1...

Python學習 第四天

map函式可以對序列中個每個值進行某種批量轉化操作,然後將結果作為迭代器iterator返回,迭代器可以利用for迴圈或者next 函式來訪問每個值。map函式接收兩個引數,乙個是函式f,乙個是iterator,map在iterable的每個元素上依次執行函式f,並把結果作為新的iterator迭代...