python小白:第七天
1、 使用字典
字典也是python提供的一種常用的資料結構,它用於存放具有對映關係的資料。
1.1 字典入門
為了儲存具有對映關係的資料,python提供了字典,字典相當於儲存了兩組資料,其中一組資料是關鍵資料,被稱為key;另一組資料可通過key來訪問,被稱為value。
由於字典中的key是非常關鍵的資料,而且程式需要通過key來訪問value,因此字典中的key不允許重複。
1.2 建立字典
程式既可使用花括號語法來建立字典,也可使用dict()函式來建立字典。實際上,dict是一種型別,它就是python中的字典型別。
在使用花括號語法建立字典時,花括號中應包含多個key-value對,key-value之間用英文冒號隔開;key-value之間用英文逗號隔開。
需要指出的是,元組可以作為dict的key,但列表不能作為元組的key。這是由於dict要求key必須是不可變型別,但列表是可變型別,因此列表不能作為元組的key。
在使用dict()函式建立字典時,可以傳入多個列表或元組引數作為key-value對,每個列表或元組將被當成乙個 key-value對,因此這些列表或元組都只能包含兩個元素。
如果不為dict()函式傳入任何引數,則代表建立乙個空的字典。
還可通過為dict指定關鍵字引數建立字典,此時字典的key不允許使用表示式。不需要新增引號。
1.3 字典的基本用法
程式對字典的操作都是基於key的,基本操作如下:
通過key訪問value。
通過key新增key-value對。
通過key刪除key-value對。
通過key修改key-value對。
通過key判斷指定key-value對是否存在。
如果要為dict新增key-value對,只需為不存在的key賦值即。
如果要刪除宇典中的key-value對,則可使用del語句。
如果對dict中存在的key-value對賦值,新賦的value就會覆蓋原有的value這樣即可改變dict中的key-value對。
如果要判斷字典是否包含指定的key,則可以使用in或not in運算子。需要指出的是,對於dict而言,in或not in運算子都是基於key來判斷的。
列表不允許對不存在的索引賦值;但字典則允許直接對不存在的key賦值。
1.4 字典的常用方法
clear()用於清空宇典中所有的key-value對,對字典執行clear()方法之後,該字典就會變成乙個空字典。
get方法其實就是根據key來獲取value,它相當於方括號語法的增強版–當使用方括號語法訪問並不存在的key時,字典會引發keyerror錯誤;但如果使用get()方法訪問不存在的key,該方法會簡單地返回none,不會導致錯誤。
update()方法可使用乙個字典所包含的key-value對來更新己有的字典。在執行update()方法是,如果被更新的字典中已包含對應的key-value對,那麼原value會被覆蓋;如果被更新的字典中不包含對應的key-value對,則該key-value對被新增進去。
items()、keys()、values()分別用於獲取字典中的所有key-value對、所有key、所有value。這三個方法依次返回dict_items、dict_keys、和dict_values物件,python不希望使用者直接操作這幾個方法,但可通過list()函式把它們轉換成列表。
pop()方法用於獲取指定key對應的value,並刪除這個key-value對。
popitem()方法用於隨機彈出字典中的乙個key-value對。實際上是彈出最後乙個key-value對。
由於實際上pop-item彈出的就是乙個元組,因此程式完全可以通過序列解包的方式用兩個變數分別接收key和value。
setdefault()方法也用於根據key來獲取對應value的值。但該方法有乙個額外的功能–當程式要獲取的key在字典中不存在時,該方法會先為這個不存在的key設定乙個預設的value,然後再返回該key對應的value。總之,setdefault()方法總能返回指定key對應的value–如果該key-value對存在,則直接返回該key對應value;如果該key-value對不存在,則先為該key設定乙個預設的value,然後再返回該key對應的value。
fromkeys()方法使用給定的多個key建立字典,這些key對應的value預設都是none;也可以額外傳入乙個引數作為預設的value。該方法一般不會使用字典物件呼叫(沒什麼意義),通常會使用dict類直接呼叫。
1.5 使用字典格式化字串
在字串模板中按key指定變數,然後通過字典為字串模板中的key設定值。
Python小白第七天
1.1變數 變數不需要先宣告 在使用變數前,需要對其先賦值 變數名可以包括字母 數字 下劃線,但不能以數字開頭 區分大小寫 1.2字串 雙引號或單引號內的東西 python i love you 或 python i love you 如果字串中需要出現單引號或雙引號,此時需要使用轉義符號 對出現的...
初學Python第七天
繼上次10.10注釋,到了序列這一章,開乙個新的章節 一 通用序列操作 定義 python中序列的通用操作,在列表 list 和元組 tuple 中都會用到。基礎的8類操作種類 索引 index 分片 slice 相加 add 乘法 multiply 成員 member 長度 length 最小值 ...
自學python第七天
函式式程式設計 函式式程式設計的乙個特點就是,允許把函式本身作為引數傳入另乙個函式,還允許返回乙個函式!函式式程式設計就是一種抽象程度很高的程式設計正規化,純粹的函式式程式語言編寫的函式沒有變數,因此,任意乙個函式,只要輸入是確定的,輸出就是確定的,這種純函式我們稱之為沒有 而允許使用變數的程式語言...