- 創(chuàng)建字典和給字典賦值
方法一
dict1 = {}
dict2 = {'name':'earth','port':80}
print dict1,dict2
結(jié)果
{} {'name': 'earth', 'port': 80}
方法二:用dict()
fdict = dict((['x',1],['y',2]))
print fdict
結(jié)果
{'y': 2, 'x': 1}
方法三;fromkeys()
ddict = {}.fromkeys(('x','y'),-1)
print ddict
結(jié)果
{'y': -1, 'x': -1}
- 訪問字典中的值value
例子
dict2 = {'name':'earth','port':80}
for key in dict2.keys():
print 'key = %s,value=%s' % (key,dict2[key])
結(jié)果
key = name,value=earth
key = port,value=80
- 不同的操作結(jié)果
dict2[key] 得value
dict2.keys() 得keys
關(guān)鍵詞key具有唯一性,vlaue不具有
in and not in
返回True and False
- 更新字典
例子
dict2 = {'name':'earth','port':80}
dict2['name'] = 'venus'
dict2['port'] = 6969
dict2['arch'] = 'sunos5'
print dict2
結(jié)果
{'arch': 'sunos5', 'name': 'venus', 'port': 6969}
- 刪除字典元素和字典
刪除鍵為“name”的條目
例子
dict2 = {'name':'earth','port':80}
del dict2['name']
print dict2
結(jié)果
{'port': 80}
- 刪除dict2中所有的條目
例子
dict2 = {'name':'earth','port':80}
dict2.clear()
print dict2
結(jié)果
{}
- 刪除整個(gè)dict2字典
dict2 = {'name':'earth','port':80}
del dict2
print dict2
結(jié)果
Traceback (most recent call last):
File "E:/workp/python/zx/test.py", line 11, in <module>
print dict2
NameError: name 'dict2' is not defined
- 刪除并返回鍵為”name”的條目
例子
dict2 = {'name':'earth','port':80}
dict2.pop('name')
print dict2
結(jié)果
{'port': 80}
- 標(biāo)準(zhǔn)類型操作符
比較大小
例子
dict4 = {'abc':123}
dict5 = {'abc':456}
print dict4 < dict5
結(jié)果
True
例子
dict5 = {'abc':456}
dict6 = {'aef':456}
print dict5 < dict6
結(jié)果
True
解釋:
映射類型操作符
[]d[k] = v 通過(guò)鍵’k’,給字典中某元素賦值‘v’
d[k] 查詢字典中某元素的值成員操作符:in ,not in
字典比較算法
1、字典的長(zhǎng)度
2、字典的鍵
3、字典的值
字典
例子
print dict(zip(('x','y'),(1,2)))
print dict([['x',1],['y',2]])
print dict([('xy'[i-1],i) for i in range(1,3)])
結(jié)果
{'y': 2, 'x': 1}
{'y': 2, 'x': 1}
{'y': 2, 'x': 1}
- 復(fù)制
copy()
例子
dict8=dict(x=1,y=2)
print dict8.copy()
結(jié)果
{'y': 2, 'x': 1}
len
dict8=dict(x=1)
dict2 ={'name':'earth','port':80}
print len(dict8),len(dict2)
返回鍵值對(duì)的數(shù)目
例子
def olduser():
name = raw_input('login: ')
pwd = raw_input('passwd: ')
passwd = db.get(name) #得到設(shè)置的密碼
if passwd == pwd:
pass
else:
print 'login incorrect'
return
print 'welcome back', name
- 集合類型和給集合賦值
- 列表list
- 字典dict()
- 集合set() frozenset()
例子
s = set('cheeseshop')
print s
t = frozenset('bookshop')
print t
結(jié)果
set(['c', 'e', 'h', 'o', 'p', 's'])
frozenset(['b', 'h', 'k', 'o', 'p', 's'])
訪問集合的值
in or not in更新集合
add、update、remove、-=刪除集合中的成員
del集合類型操作符
成員關(guān)系
in, not in等價(jià)或不等價(jià)
== ,!= , >= , <= ,子集<、<聯(lián)合(|) 等價(jià)于OR
交集&
差補(bǔ)/相對(duì)補(bǔ)集(-)
對(duì)稱差分(^)
兩個(gè)集合(s和t)的對(duì)稱差分是指另外一個(gè)集合C,該集合中的元素,只能是屬于集合s或者集合t的成員,不能同時(shí)屬于兩個(gè)集合。
交集更新(&=)
差更新(-=)
對(duì)稱差分更新(^=)