字典用法補充

2022-03-19 10:29:05 字數 2171 閱讀 2508

之前基礎篇部落格中只是總結了一下字典的基本用法,這裡對字典功能進行一些補充,畢竟作為使用頻率較高的資料型別,還是要重點掌握的。廢話不多說,上重點:

1、字典是python中唯一內建的對映型別。(通過名字引用值的資料結構稱為對映)

2、字典中的鍵是唯一的

3、dict()內建函式,引數可以是鍵與值的序列,可以是關鍵字引數,也可以是其他的對映。如果不給dict提供引數,則會返回乙個空字典(a=dict()-->a={})。

#通過向dict函式傳遞引數來建立字典

tina=dict(height=165,weight=44,hair='

black')

print(tina,tina['

hair'])

# black

小練習:

#

**簿的案例:

people=,

'fei':

}#方法一:

name = input('

input your name:')

for i in

people:

if name==i:

print('

%s %s is %d;%s %s is %s

' %(name,'

phone

',people[name]['

phone

'],name,'

address

',people[name]['

address

']))

#方法二:

lables=

name=input('

input your name:')

key=input('

phone number(p) or address(a):')

if key=='

p':key='

phone

'if key=='

a':key='

address

'if name in

people:

print('

%s %s is %s

'%(name,lables[key],people[name][key]))

else:quit

字典格式化字串的用法:

table = 

print('

bill`s phone number is %(bill)d

'%table)#

bill`s phone number is 929181

清空字典:

table = 

table.clear()

print(table)#

{}

根據鍵建立新的字典:

x={}.fromkeys(['

name

','age'])

print(x,x.fromkeys(['

age'

]))執行結果:

用可迭代物件為引數,且每乙個迭代物件為(k,v)對

l1=[1,2,3]

l2=['

tina

','tom

','fei']

d=dict(zip(l1,l2))

print(d)#

字典推導式:

d=

print(d)#

小練習:(字元統計,返回字典)

d={}

s='hello haha

'for c in

s:

if c in

d: d[c]+=1

else

: d[c]=1

print

(d)結果:

#

方法二:

d={}

s='hello haha

'for c in

s: d[c]=d.setdefault(c,0)+1#

dict自帶的setdefault方法,會在key存在時返回value,若不存在,則設為指定值並返回這個值。

print(d)

字典的補充

value值固定為乙個預設的值 fromkeys 隨機生成100個卡號 卡號以6102009開頭,後面3位依次是 001,002,003,100 生成關於銀行卡號的字典,預設每個卡號的初始密碼為 redhat 輸出卡號和密碼資訊,格式如下 卡號 密碼 6102009001 000000 card i...

pandas reindex用法 補充

import numpy as np import pandas as pd np.random.seed 666 s1 pd.series 1,2,3,4 index a b c d s2 pd.series a b c index 1,5,10 df1 pd.dataframe np.rando...

字典用法(一)

字典 字典是另一種可變容器模型,且可儲存任意型別物件 字典的每個鍵值 key value 對用冒號 分割,每個對之間用逗號 分割,整個字典包括在花括號 中 格式如下所示 d 鍵必須是唯一的,但值則不必。值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組 1.查詢 通過鍵查詢 1.1 如果知...