python-字典類型-基礎數據類型整理


python-字典類型-基礎數據類型整理


為了方便大家拷貝筆記,本文采用md源碼格式

[TOC]

# dict 字典

1. 作用:存放多個值,key:value,存取速度快

1. 定義:key必須是不可變類型(int,float,str,tuple),value可以為任意類型

## 基本功能

```

1、按key取值,可存可取

info={'name':'lqx','age':18,'sex':'male'}

print(info['name'])

info['name']='yft'

print(info)

2、切片(顧頭不顧尾,步長)

my_girl_friends=['alex','wupeiqi','yuanhao',4,5]

print(my_girl_friends[1:3]) #從第一個值取到第3個值(注意這裡是有第0個值的)

print(my_girl_friends[0:3:1]) #從第0個值開是到第3個值,步長為1

print(my_girl_friends[0:1:2]) #從第0個值開始到第1個值結束,跳1個取

print(my_girl_friends[3:1:-1]) #從第3個值開始取到第1個值,反向取

print(my_girl_friends[-1::-1]) #倒序取值,取全部值,

print(my_girl_friends[0::-1]) #倒序取值,取第0個值

3、長度

print(len(info)) #這裡的長度是字典中的元素,key:values是一個元素

4、成員運算in和not in

info={'name':'lqx','age':18,'sex':'male'}

print('lqx' in info)

print('name' in info) #這裡的成員運算只能取key

False

True

5、循環

for item in info: #這裡循環是循環的是dict中的key

print(item)

```

## clear

>clear(self)

清空

```

D = {'a':'v1','b':'v2'}

D.clear()

print(D)

結果:{}

```

## copy

>copy(self) 淺拷貝

```

D = {'a':'v1','b':'v2'}

v = D.copy()

print(v)

結果:{'a':'v1','b':'v2'}

```

## fromkeys

>fromkeys(*args, **kwargs)

循環keys,填充values,生成字典

```

D = dict.fromkeys(['k1','k2','k3'],123)

print(D)

結果:{'k2': 123, 'k3': 123, 'k1': 123}

D = dict.fromkeys(['k1','k2','k3'],[1,])

D.['k1'].append(222)

print(D)

結果:{'k3': [1, 222], 'k2': [1, 222], 'k1': [1, 222]}

```

## get

>get(self, k, d=None)

根據key獲取指定的value;不存在不報錯

```

D = {'a':'v1','b':'v2'}

v = D.get('a')

print(v)

結果:v1

v = D.get('s','不存在')

print(v)

結果:不存在

```

## items

>items(self)

取鍵值對

```

D = {'a':'v1','b':'v2'}

v = D.items()

print(v)

結果:dict_items([('a', 'v1'), ('b', 'v2')])

```

## keys

>keys(self)

取keys

```

D = {'a':'v1','b':'v2'}

v = D.keys()

print(v)

結果:dict_keys(['a', 'b'])

```

## pop

>pop(self, k, d=None)

刪除並獲取對應的value值,如果沒有找到key,給定返回d,否則引發KeyError

```

D = {'a':'v1','b':'v2'}

v = D.pop('a')

print(v)

結果:v1

print(D)

結果:{'b':'v2'}

```

## popitem

>popitem(self)

隨機刪除鍵值對,並獲取到刪除的鍵值

```

D = {'a':'v1','b':'v2'}

k,v = D.popitem()

print(k,v)

結果:a,v1

print(D)

結果:{'b':'v2'}

```

## setdefault

>setdefault(self, k, d=None)

增加,如果存在則不做操作

```

D = {'a':'v1','b':'v2'}

D.setdefault('c','v3')

print(D)

結果:{'a':'v1','b':'v2','c':'v3'}

```

## update

>update(self, E=None, **F)

批量增加或修改

```

D = {'a':'v1','b':'v2'}

D.update({'c':'v3','a':'v24'})

print(D)

結果:{'a':'v24','b':'v2','c':'v3'}

```

## values

>values(self)

取values

```

D = {'a':'v1','b':'v2'}

v = D.values()

print(v)

結果:dict_values(['v1', 'v2'])

```

# dict類型總結

1. 可以存多個值,值都可以是任意類型

1. 無序

1. 可變:值變,id不變,可變==不可hash


分享到:


相關文章: