日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python字典的建立和输出_字典的创建和使用

發布時間:2024/9/27 python 81 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python字典的建立和输出_字典的创建和使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

直接創建

d = {'age': 23, 'name': 'Daniel', 'sex': 1}

輸出結果:

{'age': 23, 'name': 'Daniel', 'sex': 1}

dict函數

# 通過序列對建立字典

vaulues = [('name', 'Daniel'), ('age', 23), ('sex', 1)]

print dict(values)

# 通過關鍵字建立字典

print dict(name='Daniel', age=23, sex=1)

# 如果 dict 不傳入任何參數將會返回一個空字典

print dict()

輸出結果:

{'age': 23, 'name': 'Daniel', 'sex': 1}

{'age': 23, 'name': 'Daniel', 'sex': 1}

{}

基本字典操作

d = {'name': 'Daniel', 'age': 23, 'sex': 1}

# 返回d項中(鍵-值對)的數量

len(d)

# 刪除鍵為name的項

del d['age']

# 檢查d中是否含有鍵為name的項,返回True或者False

'name' in d

提示:在字典中檢查鍵的成員資格比在列表中檢查值的成員資格更高效,數據結構的規模越大,兩者的效率差距越明顯。

字典的鍵類型(任何不可變類型):int, float, string, tuple

{1: 'Daniel'} # int

{1.2: 'Daniel'} # float

{'name': 'Daniel'} # string

{('name', 'Daniel'): 23} # tuple

字典的格式化字符串

data = {'name': 'Daniel', 'age': 23, 'sex': 1}

template = 'name=%(name)s,age=%(age)s,sex=%(sex)s'

print template % data

template = 'name={name},age={age},sex={sex}'

print template.format(**data)

輸出結果:

name=Daniel,age=23,sex=1

name=Daniel,age=23,sex=1

字典方法

1、clear 清除字典中所有項

d = {'name': 'Daniel', 'age': 23, 'sex': 1}

d.clear()

print d

>>> {}

2、copy 返回一個具有相同鍵值對的新字典(這個方法實現的淺復制)

data1 = {'name': 'Daniel', 'machines': ['foo', 'bar', 'baz']}

data2 = data1.copy()

data1['name'] = 'biu'

data1['machines'].remove('bar')

print data1

print data2

輸出結果:

{'name': 'Daniel', 'machines': ['foo', 'baz']}

{'name': 'biu', 'machines': ['foo', 'baz']}

淺復制說明:(待說明...)

3、deepcopy 返回一個具有相同鍵值對的新字典(這個方法實現的深復制)

from copy import deepcopy

data1 = {'name': 'Daniel', 'machines': ['foo', 'bar', 'baz']}

data2 = deepcopy(data1)

data1['name'] = 'biu'

data1['machines'].remove('bar')

print data1

print data2

輸出結果:

{'name': 'biu', 'machines': ['foo', 'baz']}

{'name': 'Daniel', 'machines': ['foo', 'bar', 'baz']}

深復制說明:(待說明...)

4、fromkeys 使用給定的鍵建立新的字典,每個鍵默認對應的值為None

print dict.fromkeys(['name', 'age'])

# 如果不想使用None作為默認值,也可以自己提供默認值

print dict.fromkeys(['name', 'age'], 'null')

輸出結果:

{'age': None, 'name': None}

{'age': 'null', 'name': 'null'}

5、get 是一個更寬松的訪問字典項的方法,訪問一個不存在的鍵時,沒有任何異常,而得到了None值。還可以自定義默認值,替換None

d = {}

print d.get('name')

print d.get('name', 'N/A')

d['name'] = 'Daniel'

print d.get('name')

輸出結果:

None

N/A

Daniel

6、has_key 檢查字典中是否含有給出的鍵,相當于表達式 k in d,使用那種方式很大程度取決于個人愛好。Python 3.0中不包含這個函數。

d = {}

print d.has_key('name')

d['name'] = 'Daniel'

print d.has_key('name')

輸出結果:

False

True

7、items和iteritems

items將所有的字典以列表方式返回,這些列表項中的每一項都來自(鍵, 值)。但是在返回是并沒有特殊的順序。

iteritems的作用大致相同,但是會返回一個迭代器對象而不是列表

d = {'title': 'Python', 'url': 'http://www.python.org', 'spam': 0}

print d.items()

d = {'title': 'Python', 'url': 'http://www.python.org', 'spam': 0}

it = d.iteritems()

print it

print list(it)

輸出結果:

[('url', 'http://www.python.org'), ('spam', 0), ('title', 'Python')]

[('url', 'http://www.python.org'), ('spam', 0), ('title', 'Python')]

8、keys和iterkeys,keys將字典中的鍵以列表形式返回,而iterkeys則返回針對鍵的迭代器

d = {'title': 'Python', 'url': 'http://www.python.org', 'spam': 0}

print d.keys()

print d.iterkeys()

輸出結果:

['url', 'spam', 'title']

9、pop 用來獲得對應于給定鍵的值,然后將這個鍵-值對從字典中移除

d = {'name': 'Daniel', 'age': 23, 'sex': 1}

d.pop('age')

print d

輸出結果:

{'name': 'Daniel', 'sex': 1}

9、popitem 彈出隨機的項,因為字典并沒有最后的元素或者其它有關順序的概念

d = {'name': 'Daniel', 'age': 23, 'sex': 1}

print d.popitem()

print d

輸出結果:

('age', 23)

{'name': 'Daniel', 'sex': 1}

10、setdefault 類似于get方法,就是能夠獲得與給定鍵相關關聯的值,還能在字典中不含有給定鍵的情況下設定相應的鍵值

d = {}

print d.setdefault('name', 'N/A')

print d

d['name'] = 'Daniel'

print d.setdefault('name', 'N/A')

print d

輸出結果:

N/A

{'name': 'N/A'}

Daniel

{'name': 'Daniel'}

11、update 可以利用一個字典項更新另一個字典

d = {'name': 'Daniel', 'age': 23, 'sex': 1}

x = {'name': 'biu'}

d.update(x)

print d

d.update(name='biubiu')

print d

提供的字典中的項會被添加到舊的字典中,若有相同的鍵則會進行覆蓋

輸出結果:

{'age': 23, 'name': 'biu', 'sex': 1}

{'age': 23, 'name': 'biubiu', 'sex': 1}

12、values和itervalues,values方法以列表的形式返回字典中的值,itervalues返回值的迭代器。與返回鍵的列表不同的是,返回值的列表中可以包含重復元素

d = {1:1, 2:2, 3:3, 4:1}

print d.values()

輸出結果:

[1, 2, 3, 1]

總結

以上是生活随笔為你收集整理的python字典的建立和输出_字典的创建和使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。