Python字典

#Python字典
#字典(dictionary), 每个键值用:来分割, 相邻键值对用,来分割, 整个字典用{}包括;
#字典(dict)的键必须是唯一的, 值不需要唯一
#字典(dict)的键必须是不可改变的数据类型, 如(字符串, 数字, 元组), 值可以是任意类型

var_dic = {'key1': 111, 2: 'value2'}

#字典的输出
print(var_dic['key1']) #111
print(var_dic[2]) #value2
#print(var_dic['key3']) #如果key不存在, 则会报错

#字典的更新与添加
var_dic['key1'] = [1, 2, 3]
var_dic['key3'] = 'value3'
print(var_dic) #{'key1': [1, 2, 3], 2: 'value2', 'key3': 'value3'}

#字典中的元素的删除
del var_dic[2] #删除指定元素
print(var_dic) #{'key1': [1, 2, 3], 'key3': 'value3'}

var_dic.clear() #清空字典
print(var_dic) #{}

del var_dic #删除字典

#字典内置函数 和 方法
var_dic = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print(len(var_dic)) #3 返回字典元素个数

var_str = str(var_dic) #字典转字符串
print(var_str) #{'Name': 'Runoob', 'Age': 7, 'Class': 'First'}

print(type(var_dic)) # 输出变量类型

var_dic.clear() #清空字典
var_dic.copy() #返回字典的浅复制

var_seq = ('name', 'age', 'sex') #dict.fromkeys(), 用于以序列参数做key, 创建一个新字典
var_dic = dict.fromkeys(var_seq)
print(var_dic) #{'name': None, 'age': None, 'sex': None}
print(dict.fromkeys(var_seq, 1)) #{'name': 1, 'age': 1, 'sex': 1}

print(var_dic.get('Age', 100)) #100 根据key获取值, 如果不存在, 返回默认值

print('name' in var_dic) #True 判断键是否存在

print(var_dic.items()) #dict_items([('name', None), ('age', None), ('sex', None)]), 以列表套元组的形式返回

print(var_dic.keys()) #dict_keys(['name', 'age', 'sex']) 以元组套列表的形式返回key
print(list(var_dic.keys())) #['name', 'age', 'sex']

var_dic.setdefault('address', None) #和get()类似, 但如果键不存在, 将会添加键, 值为默认值

var_dic2 = {'address': 'anhui', 'job': None}
var_dic.update(var_dic2) #把字典2的键值相应的更新进或者新增进 var_dic中
print(var_dic) #{'name': None, 'age': None, 'sex': None, 'address': 'anhui', 'job': None}

print(list(var_dic.values())) #[None, None, None, 'anhui', None] 返回值列表

print(var_dic.pop('job', 'hefei')) #hefei 删除并返回指定key对应的值, 如果不存在返回默认值

var_dic.popitem() #随机删除一个键值对
var_dic.popitem()
var_dic.popitem()
print(var_dic) 

你可能感兴趣的:(Python字典)