Python學習day8(資料的公共操作和推導式)

2021-10-04 20:23:23 字數 3830 閱讀 6299

容器型別相互轉換

推導式字典推導式

集合推導式

前面的都十分簡單,我們主要關注range()和enumerate()這兩個函式。

首先需要注意:range函式生成的資料序列是不包含end的。

range()資料序列不可直接被列印,需要遍歷:

print

(range(1

,10,1

))#range(1, 10)

for i in

range(1

,10,1

):print

(i)# 1,2,3…………

如果不寫開始,預設從0開始

如果不寫步長,預設為1

for i in

range(10

):print

(i)

list1 =

['a'

,'b'

,'c'

,'d'

,'e'

]for i in

enumerate

(list1, start=1)

:print

(i)'''

執行結果

(1, 'a')

(2, 'b')

(3, 'c')

(4, 'd')

(5, 'e')

'''#返回結果是元組,元組第乙個資料是原迭代物件的資料對應的下標,元組第二個資料是原迭代物件的資料

列表、元組、集合之間可以相互進行方便地進行型別轉換。

資料先準備好:

list1 =[10

,20,30

,20,40

,50]s1 =

t1 =

('a'

,'b'

,'c'

,'d'

,'e'

)

# list():轉換成列表

print

(list

(s1)

)#[200, 100, 500, 300]

print

(list

(t1)

)#['a', 'b', 'c', 'd', 'e']

# tuple(): 轉換成元組

print

(tuple

(list1)

)#(10, 20, 30, 20, 40, 50)

print

(tuple

(s1)

)#(200, 100, 500, 300)

# set():轉換成集合

print

(set

(list1)

)# 自動去除重複

print

(set

(t1)

)#

推導式的作用主要在於縮短**量,使得**更加簡潔。

作用:用乙個表示式建立乙個有規律的列表或控制乙個有規律的列表。

需求:建立乙個存放1-10的資料的列表

list1 =

i =0

while i <10:

i +=

1print

(list1)

list1 =

for i in

range(10

):print

(list1)

list1 =

[i for i in

range(10

)]print

(list1)

需求建立乙個0-10的並且只包含偶數的列表

list1 =

[i for i in

range(0

,10,2

)]print

(list1)

list2 =

for i in

range(10

):if i %2==

0:print

(list2)

list3 =

[i for i in

range(10

)if i %2==

0]print

(list3)

如果要求建立的乙個列表如下:

[(1

,0),

(1,1

),(1

,2),

(2,0

),(2

,1),

(2,2

)]

list1 =

for i in

range(1

,3):

for j in

range(3

):# 列表裡面追加元組: 迴圈前準備乙個空列表,然後這裡追加元組資料到列表

(i, j)

)print

(list1)

list2 =

[(i, j)

for i in

range(1

,3)for j in

range(3

)]print

(list2)

作用:常常用來把列表合併成為字典或提取字典中的目標資料。

字典推導式實現:

dict1 =

print

(dict1)

【注:】python中可以使用**運算子輕鬆完成乙個數的n次方運算。

print(2

**3)#2的3次方,結果為8

[

'name'

,'age'

,'gender'

,'id'][

'tom',20

,'man'

]

字典推導式實現:

list1 =

['name'

,'age'

,'gender'

,'id'

]list2 =

['tom',20

,'man'

]dict1 =

print

(dict1)

#

資料:

需求:提取電腦台數大於等於200的字典資料

dict1 =

print

(dict1)

#

用的不多,簡單過一下。

list1 =[1

,1,2

]set1 =

print

(set1)

#

我們需要關注集合中資料的無序性和不可重複性。

python學習筆記 day8

if 條件 語句if 條件 語句else 語句if 條件 語句elif 條件 語句else 語句python中使用elif代替else if,所以if語句的關鍵字是if elif else 需要注意的是 語句的縮排 python中沒有switch case語句 如果語句只有一條,可以寫在 if 後 ...

DAY8學習筆記

檔案操作的基本概念 開啟檔案的模式有三種純淨模式 r 預設的 w a。控制操作檔案內容格式的兩種模式 t 預設的 b。大前提 tb模式均不能單獨使用,必須與純淨模式結合使用。t文字模式 1.讀寫檔案都是以字串為單位的。2.只能針對文字檔案。3.必須指定encoding引數。b二進位制模式 1.讀寫檔...

python入門day8(函式)

近期在忙網路大賽,故更新的速度就會慢一些 一 函式 1.定義函式 def greet user 顯示簡單的問候語 print hello greet user 向python指出了函式名,還可能在括號內支出函式為完成其任務需要什麼樣的資訊。在這裡,函式名為greet user 他不需要任何資訊就能完...