python基礎06

3.4.4字典_刪除

(1)pop()

可以指定鍵名進行刪除,並且可以返回刪除的數據。如果沒有這個鍵,則報錯

(2)popitem()

用來刪除鍵值對,從末尾刪除數據,並且可以返回刪除的數據

(3)del 和 del()

可以指定鍵名進行刪除,也可直接刪除字典

(4)clear()

字典名.clear()可以清空字典,得到一個空字典,返回None

3.4.5字典常用操作

(1)len():測量字典中鍵值對的個數

(2)keys:字典名.keys()

返回一個包含字典所有鍵名的列表

(3)values:字典名.values()

返回一個包含字典所有值的列表

(4)items:字典名.items()

返回一個包含所有(鍵,值)元組的列表

(5)has_key (注意:在python3中沒有這個方法了,python2中有)

dict1.has_key(key)如果key在字典中,返回True,否則返回False

3.4.6字典的遍歷

(1)遍歷字典的key(鍵)

for temp in dict1.keys()

print(temp)

(2)遍歷字典的value(值)

for temp in dict1.values()

print(temp)

(3)遍歷字典的項(元素)

for temp in dict1.items()

print(temp)

(4)遍歷字典的鍵值對

for temp in dict1.items()

print("%s:%s"%(temp[0],temp[1]))

Or

for key,value in dict1.items()

print(key)

print(value) #注:此處的key和value可以是其它字母

(5)實現帶下標索引的遍歷

chars = ['a', 'b', 'c', 'd']

i = 0

for chr in chars:

print("%d %s"%(i, chr))

i += 1

Or

chars = ['a', 'b', 'c', 'd']

for i, chr in enumerate(chars):

print i, chr

3.4.7字典推導式

# 需求:1:1,2:4,3:9....

dict1 = {i:i ** 2 for i in range(10)}

print(dict1)

字典推導式應用:

將兩個列表合併成一個字典☆☆☆

list1 = ['name','age']

list2 = ['gui','30']

dict1 = {list1[i]:list2[i] for i in range(len(list1))}

print(dict1)

將一個字典拆成兩個列表

dict1 = {'name':'gui','age':18}

key_list = []

val_list =[]

for key,value in dict1.items():

key_list.append(key)

val_list.append(value)

print(key_list)

print(val_list)

3.5元組

元組與列表類似,但不同之處是元組中的元素是不可以改變的;若元組中套有列表或者字典,則套的列表或字典中的數據是可以修改的。元組用小括號。

例:

t3 = (1,2,[10,20,30])

t3[2][1] = 200

print(t3)

注意:創建元組時,如果元組中只有一個數據,還想要類型是元組,必須在數據後加逗號

3.5.1訪問元組

通過下標就可以訪問

3.5.2元組的內置函數index和count

用法和列表中相同

3.6 集合

注意:集合中的元素不能是可變數據類型,即:集合中的元素不能是列表、字典、集合

集合不支持下標,是無序的。用{}

作用:列表去重☆☆☆

例:

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

print(list(set(list1)))

       #對list1進行去重

3.6.1創建集合set()

(1)手動創建:set = {1,2,3}

(2)用set方法創建(創建空集合時僅能用此方法)

set1 = set()

3.6.2集合添加數據

(1)add():一次添加一個數據

set1.add(100)

(2)update()添加多個數據,參數是一個列表

set1.update([1000,2000,3333])

3.6.3集合刪除數據

(1)remove() 沒有就報錯

set1.remove(1000)

(2)pop()

用pop刪除數據,刪除的是第一個數據,而且會返回刪除的數據

set1.pop(2000)

(3)discard()

刪除指定數據,如果沒有這個數據,不做任何事

set1.discard(3333)

(4)del

3.6.4集合推導式

set2 = {i for i in range(10) if i%2 == 0}

print(set2)

3.6.5集合運算

(1)交集:&

(2)並集:| 包含所有不重複的數據

(3)差集:- 取減號前面的集合有的數據後面沒有的數據

3.7拆包形式

(1)用for遍歷

dict1 = {'name': 'python', 'age': 28}

for key,value in dict1.items():

print(key)

print(value)

(2)用變量賦值

s1, s2 = dict1.popitem()

print(s1)

print(s2)

 

d1, d2 = dict1

print(d1)

print(d2)

print(dict1[d1])

print(dict1[d2])

 

3.8公共方法

4.函數

4.1自定義函數

(1)定義函數的語法:

def 函數名(參數):

命令

(2)調用函數的語法:

函數名()

4.2函數的參數

(1)參數

參數分爲形參和實參

函數定義時候寫的參數是形參(形式上存在的)

函數調用的時候書寫的參數是實參(實際真實存在的參數)

(2)注意

注意個數(定義和調用個數相等); 注意順序(傳參要一致) -- 位置參數

一個參數只能接收一個值

參數定義順序:位置參數——默認參數——不定長參數

4.3函數的返回值

(1)想要獲得函數的返回值,用return關鍵字

return的作用:①返回值②會打斷程序的執行

如果有多個返回值,會以元組的方式返回

(2)多個返回值:

例如:

def func1():

    return 1+1,2+2 #多個返回值時必須是這樣的格式:return 值1,值2



num1,num2 = func1()

print(num1)

print(num2)

4.4四種函數的類型

(1)沒有參數,沒有返回值

(1)沒有參數,有返回值

(1)有參數,沒有返回值

(1)有參數,有返回值

4.5函數關鍵字參數

關鍵字參數的概念僅僅針對函數的調用

關鍵字參數不受位置(順序)的限制

例如:

def func1(name, age):

    print(name)

    print(age)



func1(name='python', age=28) # name和age不能添加引號

注意:位置參數和關鍵字參數可以混用,但是關鍵字參數要放在位置參數的後面

如:func1('python',age=2)

只要用了關鍵字參數,以後針對這個參數傳值就必須是關鍵字形式傳遞

不需要注意傳值的參數順序

如果關鍵字傳值,程序直接能觀察出鍵和值的對應關係

發佈了51 篇原創文章 · 獲贊 2 · 訪問量 5941
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章