python 字典

python 里面的字典很神奇,可以用来做各种东西,不过要注意的是,字典里面的键是不允许修改的!字典里面的键是不允许修改的! 字典里面的键是不允许修改的!  所以字典的键不能用可变对像,只能用不可变的。字典有很多操作,删除、查询(给定键查值)、修改值(键不可修改)等。

一些高级用法稍后再更新了。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# by Mercury_Lc

dic = dict()  # 基本的字典创建,也可结合 zip 或者其他列表等转化建立空字典。
print(dic)
dic = {}    # 这样子也可以
print(dic)

dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
print(dic)
dic['age'] = 19  # 通过键来修改
print(dic)

del dic['sex']  # 删除这个键值对
print(dic)

dic.clear()  # 清空字典
print(dic)

dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
del dic   # 删除掉字典,可以理解成销毁

dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
dic1 = dic.copy()  # 浅拷贝
print(dic1)
dic1['age'] = 19  # 改变copy的值,原来的值不变
print(dic)
print(dic1)


if 'age' in dic:   # 判断这个键是否在字典中,有的话是 T,反之是 F。
    print('yes')
else:
    print('no')

dic = dic.fromkeys('Mercury')  # 依次选取字符串里面的字符当做键,也可以是一个元组,不可变对象,来当做键值
print(dic)
dic = dic.fromkeys('Mercury',100)  # 100为可选参数
print(dic)

dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
print(dic.get('name',-1))  # 获得键对应的值,没有则返回-1
print(dic.get('Name'),-1)

print(dic.items()) # 分别输出键值对、键、值(值得话,这样子就可以把字典里面的东西放到 list 里面了)。
print(dic.keys())
print(dic.values())

dic.pop('sex',-1)  # 删除相应的键对应的键值对、失败返回 -1
print(dic)

print(dic.popitem())  # 随机删除并返回删除的什么
print(dic)

运行结果:

"F:Pycharm WorkplacevenvScriptspython.exe" "F:/Pycharm Workplace/test1.py"
{}
{}
{'name': 'Mercury_Lc', 'age': 18, 'sex': 'female'}
{'name': 'Mercury_Lc', 'age': 19, 'sex': 'female'}
{'name': 'Mercury_Lc', 'age': 19}
{}
{'name': 'Mercury_Lc', 'age': 18, 'sex': 'female'}
{'name': 'Mercury_Lc', 'age': 18, 'sex': 'female'}
{'name': 'Mercury_Lc', 'age': 19, 'sex': 'female'}
yes
{'M': None, 'e': None, 'r': None, 'c': None, 'u': None, 'y': None}
{'M': 100, 'e': 100, 'r': 100, 'c': 100, 'u': 100, 'y': 100}
Mercury_Lc
None -1
dict_items([('name', 'Mercury_Lc'), ('age', 18), ('sex', 'female')])
dict_keys(['name', 'age', 'sex'])
dict_values(['Mercury_Lc', 18, 'female'])
{'name': 'Mercury_Lc', 'age': 18}
('age', 18)
{'name': 'Mercury_Lc'}

Process finished with exit code 0
原文地址:https://www.cnblogs.com/lcchy/p/10139416.html