python 字典(dictionary)

python 字典(dictionary)

字典是一种可变容器模型,且可存储任意类型对象。使用键-值(key-value)存储,具有极快的查找速度。

格式如下:

d = {key1() : value1((), key2 : value2 }

举个例子:用字典来存放成绩。

d={'李明' : 89, '珍妮' : 90,'戴维' : 90}

值可以取任何数据类型。但键必须是不可变的所以可以用数字,字符串或元组充当,所以用列表就不行。

像上面的例子:

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}

如果我们把键改为列表:

d={['李明'] : '89', '珍妮' : '90','戴维' : '90'}

结果就会报错:

Traceback (most recent call last):
  File "C:/Users/86153/PycharmProjects/pythonProject2/123.py", line 1, in <module>
    d={['李明'] : '89', '珍妮' : '90','戴维' : '90'}
TypeError: unhashable type: 'list'
访问字典里的值

把相应的键放入的方括弧中:

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
print(d['李明'])

此时:李明的成绩就被调出来了89

若字典中无键的访问数据,就会输出错误。

比如:

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
print(d['小黑'])

这时电脑就会显示:

Traceback (most recent call last):
  File "C:/Users/86153/PycharmProjects/pythonProject2/123.py", line 2, in <module>
    print(d['小黑'])
KeyError: '小黑'

当然为了避免出现错误,我们可以通过以下的方法来避免:

通过in判断key是否存在。

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
print('小黑'in d)

结果为:False

修改,删除字典

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对。

示例如下:将小明的成绩改为92,添加戴夫成绩为98.

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
d['李明']='92'    ##更新
d['戴夫']='98'   ##添加
print(d)

结果为:要注意,被添加的键/值对会排在末尾。

{'李明': '92', '珍妮': '90', '戴维': '90', '戴夫': '98'}

我们可利用del能删单一的元素也能清空字典,清空只需一项操作。

例如:我们把李明的成绩删除。

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
del d['李明']
print(d)

结果为:

{'珍妮': '90', '戴维': '90'}

我们也可以利用del来清空字典:

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
del d
print(d)

结果为:

Traceback (most recent call last):
  File "C:/Users/86153/PycharmProjects/pythonProject2/123.py", line 3, in <module>
    print(d)
NameError: name 'd' is not defined

我们可以利用dict.clear()来清空字典。

例如:

d={'李明' : '89', '珍妮' : '90','戴维' : '90'}
d.clear()
print(d)

结果就是:{} d里面的元素都被清空了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值