我的pythonx学习笔记(三)----字典

字典

python 中的字典是一种映射类型数据,里面的数据是键值对,Python中的字典是基于hash实现的。


- 键 : 字典的键是唯一的,同时字典的键必须是可哈希的(能够计算出一个固定的hash值)
- 值 :字典中的值可以为数字、字符串,以及其他容器

创建字典

  • 使用 {} 的方法
  • 使用工厂函数 dict

3种构造字典的方

a = {}

a = {
    'ip': '127.0.0.1',
    'port': '9090',
}
a = dict((['x', 1], ['y', 2]))
a = {}.fromkeys(('x', 'y'), 4)

字典是无序的,hash表的实现也是无序的

访问字典的元素

print(a['x'])

往字典中插入元素

a['y'] = 'hello'
a['z'] = 'world'

删除字典中的元素

del a['x']
print(a)

清空字典

del a['x']
print(a)

判定元素是否存在于字典中

print('x' in a)
print('y' in a)

字典之间的大小关系
1.先比较元素个数
2.再比较key
3.再比较

常用的内置函数


len : 字典中键值对的个数
hash : 判断一个对象是否可哈希,若是不可以,就报错

print(hash(()))
print(hash("hello"))
print(hash(4))
print(hash([]))

这里的元组为不可哈希的
一般情况下,不可修改的类型都是可哈希的


keys : 返回一个列表,包含字典的所有值
values : 返回一个列表,包含字典的所有value
items: 返回一个列表,每一个元素都是一个元组,包含了key 和 value

a = {
    'ip': '127.0.0.1',
    'port': '9090',
}

print(a.keys())
print(a.values())
print(a.items())

集合(set)

a = set([1, 2, 3])
b = set([1, 2, 3, 4])

print(a | b)
print(a & b)
print(a - b)
print(b - a)
print(a ^ b) # 取对称差

set 具有去重的操作

c = set([1, 2, 3, 4, 5, 4, 4, 3])
print(c)

猜你喜欢

转载自blog.csdn.net/Misszhoudandan/article/details/81001923