Python學習筆記4

2021-10-07 00:05:44 字數 3502 閱讀 5408

dict()的操作方法

元組tuple

dict是可變的

dict可以儲存任意數量的python物件

dict可以儲存任何python資料型別

dict以:key:value,即「鍵:值」對的形式儲存資料,每個鍵是唯一的。

dict也被稱為關聯陣列或雜湊表。

方法1:

建立乙個空的dict,這個空dict,可以在以後向裡面加東西用。

>>

> mydict =

>>

> mydict

建立有內容的dict。

>>

> person =

>>

> person

「name」:"qiwsir"就是乙個鍵值對,前面的name叫做鍵(key),後面的qiwsir是前面的鍵所對應的值(value)。在乙個dict中,鍵是唯一的,不能重複;值則是對應於鍵,值可以重複。鍵值之間用(:)英文的分號,每一對鍵值之間用英文的逗號(,)隔開。

方法2:

>>

> name =([

"first"

,"google"],

["second"

,"yahoo"])

#這是另外一種資料型別,稱之為元組,後面會講到

>>

> website =

dict

(name)

>>

> website

方法3:

這個方法,跟上面的不同在於使用fromkeys

>>

> website =

.fromkeys(

("third"

,"forth"),

"facebook"

)>>

> website

需要提醒的是,這種方法是從新建立乙個dict。

>>

> person[

'name2']=

"qiwsir"

#這是一種向dict中增加鍵值對的方法

>>

> person

>>

> person

>>

> person[

'name'

]'qiwsir'

用for語句來迴圈訪問

>>

> person

>>

>

for key in person:..

.print person[key]..

.qiwsir

qiwsir

python

qiwsir.github.io

>>

> a_list =[[

1,2,

3],[

4,5]

,[6,

7]]>>

> a_list[1]

[1]5

>>

> a_dict =,2

:"python"

,"email"

:"[email protected]"

}>>

> a_dict,2

:'python'

,'email'

:'[email protected]'

}>>

> a_dict[1]

['name'

]#乙個巢狀的dict訪問其值的方法:一層一層地寫出鍵

'qiwsir'

用d.keys()的方法得到dict的所有鍵,結果是list

用d.values()的方法得到dict的所有值,如果裡面沒有巢狀別的dict,結果是list

用items()的方法得到了一組一組的鍵值對,結果是list,只不過list裡面的元素是元組

d.pop(key),根據key刪除相應的鍵值對,並返回該值

del d[3] #沒有返回值,如果刪除鍵不存在,返回錯誤

d.update(d2)可以把d2合併到d中

元組是用圓括號括起來的,其中的元素之間用逗號隔開。

tuple是一種序列型別的資料,這點上跟list/str類似。它的特點就是其中的元素不能更改,這點上跟list不同,倒是跟str類似;它的元素又可以是任何型別的資料,這點上跟list相同,但不同於str。

>>

> t =

123,

'abc',[

"come"

,"here"

]>>

> t

(123

,'abc',[

'come'

,'here'

])

元組的基本操作和list是一樣的。所有在list中可以修改list的方法,在tuple中,都失效。

list()和tuple()能夠實現兩者的轉化:

>>

> t(1

,'23',[

123,

'abc'],

('python'

,'learn'))

>>

> tls =

list

(t)#tuple-->list

>>

> tls[1

,'23',[

123,

'abc'],

('python'

,'learn')]

>>

> t_tuple =

tuple

(tls)

#list-->tuple

>>

> t_tuple(1

,'23',[

123,

'abc'],

('python'

,'learn'

))

tuple 比 list 操作速度快。如果您定義了乙個值的常量集,並且唯一要用它做的是不斷地

遍歷它,請使用 tuple 代替 list。

如果對不需要修改的資料進行 「寫保護」,可以使**更安全。使用 tuple 而不是 list 如同

擁有乙個隱含的 assert 語句,說明這一資料是常量。如果必須要改變這些值,則需要執

行 tuple 到 list 的轉換 (需要使用乙個特殊的函式)。

tuples 可以在 dictionary 中被用做 key,但是 list 不行。實際上,事情要比這更複雜。

dictionary key 必須是不可變的。tuple 本身是不可改變的,但是如果您有乙個 list 的

tuple,那就認為是可變的了,用做 dictionary key 就是不安全的。只有字串、整數或其

它對 dictionary 安全的 tuple 才可以用作 dictionary key。

tuples 可以用在字串格式化中

python學習筆記(4)

函式定義和呼叫 函式就是最基本的一種 抽象的方式 python有許多內建函式 呼叫 要呼叫乙個函式,需要知道函式 的名稱和引數 比較函式cmp x,y 就需要兩個引數,如果 x,就返回 1,如果 x y 就返回 0,如果 x y 就返回1 資料型別轉換函式,不如int 函式可以把其他資料型別轉換為整...

python學習筆記4

在編寫語句縮排時,tab鍵和空格鍵不能混用 每行 長度不宜超過79,如需換行可新增換行符 或什麼都不加 賦值方式有基本賦值和序列賦值,變數名指將剩餘的物件賦值給該變數,稱為擴充套件序列解包賦值,但乙個表示式只允許出現乙個 多目標賦值可以分開賦值,也可以引用賦值 result 及格 if score ...

python學習筆記4

2.字典元素的訪問 3.字典元素操作 4.序列解包 二 集合 字典是 鍵值對 的無序可變序列,鍵 是任意的不可變資料,整數 浮點數 字串 元組,且 鍵 不可重複。a b dict name wq age 18,job student a dict name wq age 18 k name age ...