字典常用操作

'''
字典常用操作
字典是无序的
key必须是惟一的,天生去重
'''

dictionary = {
    'China': ['地大物薄', '重男轻女'],
    'Japan': ['马上沉没', '重女轻男'],
    'American': ['全球霸主', '黑白平等']
}

#
dictionary['France'] = ['浪漫国度', '美女甚多']

#删的两种方法
del dictionary['American']
dictionary.pop('American')
dictionary.popitem()          #随机删

#
dictionary['Japan'][0] = '日本是中国的'


#
print('China' in dictionary)
print(dictionary.has_key('China'))   #python2.x
print(dictionary['China'])     #如果调用不存在的键会报错
print(dictionary.get('China'))  #不存在返回None
print(dictionary['France'])    #报错
print(dictionary.get('France'))  #返货None

#字典合并 update
other_dict = {
    'Japan': 'sb',
    1: 2,
    3: 4
}
dictionary.update(other_dict)

'''
setdefault()
从字典中取值
如果有对应键,直接返回对应值
如果没有对应键,设置默认值
'''
print(dictionary.setdefault('Japan', 'sb')) 

#字典转换为列表
print(dictionary.items())

#初始化一个新的字典 如果修改,只有第一层互不影响,内层的都是引用,一改全改
#类型列表的浅复制
b = dict.fromkeys([1,2,3], 'test')
b[1] = 'test1'
print(b)

c = dict.fromkeys([6,7,8], [1, {'name':'xiaobai'}, 23])
c[6][1]['name'] = 'xiaowang'
print(c)

#字典循环的两种方式
for k in dictionary:
    print(k,dictionary[k])
#此方法把字典转换为列表,大数据比较耗资源
print()
for k,v in dictionary.items():
    print(k,v)

dict = {
'name': 'Eric',
'age': 23,
'height': 170,
}


for k in dict.keys():
print(k)

for v in dict.values():
print(v)


for k, v in dict.items():
print(k, v)

print(dictionary)

 

posted @ 2018-03-12 11:30  与君同悦  阅读(183)  评论(0)    收藏  举报