[Python笔记_3]集合、字典

文章目录

  • 1 集合
    • 1.1 创建一个空集合
    • 1.2 集合是可变类型
      • 1.2.1 向集合中添加元素:
      • 1.2.2 删除操作:remove(),pop(),clear()
      • 1.2.3 clear():清空操作
      • 1.2.4 循环遍历
    • 1.3 集合生成运算
      • 1.3.1 成员运算
    • 1.4 交、并、查集合运算
      • 1.4.1 交集
      • 1.4.2 并集
      • 1.4.3 差集
      • 1.4.4 对称差:将不同的元素放在一个集合里
    • 1.5 子集、真子集
      • 1.5.1 <:表示真子集,<=:子集
  • 2 字典
    • 2.1 创建一个空字典
      • 2.1.1 创建字典的方式
      • 2.1.2 根据键的数量来确定字典中键值对的数量
      • 2.1.3 字典生成式
    • 2.2 查找字典中元素
    • 2.3 代替字典中的值
    • 2.4 循环遍历
    • 2.5 len()
    • 2.6 获取字典中所有的键keys()
    • 2.7 获取字典中所有的值value()
    • 2.8 获取字典中所有的键值对items()
    • 2.9 删除字典中的元素:
      • 2.9.1 pop():通过删除键值的方式删除键值对
      • 2.9.2 popitem():删除字典中最后一个键值对

1 集合

容器型数据类型
set
{}

性质:

无序性:每个元素在集合中地位是一样的
互异性:一个集合中,一个元素只能存在一次
确定性:给定一个元素,该元素属于或者不属于这个集合

1.1 创建一个空集合

# 集合的创建方式
a = set()
print(type(a))

# 字典的创建方式
b = {}
print(type(b))

1.2 集合是可变类型

1.2.1 向集合中添加元素:

# add()
a.add(33)
# a.add({12, 32})   # 报错
print(a)

# updata
a.update({1, 20, 3})
print(a)

add()只能一个一个的添加,updata()添加元素可以放入徐两列中直接添加

1.2.2 删除操作:remove(),pop(),clear()

# remove()
a.remove(33)
print(a)

# pop():随机删除一个集合中的元素
# 在cmd中是随机删除一个元素,但是Python不是
# 如果是字符串则删除最左边的元素
# 如果是数字,删除最小的数值
a.pop()
print(a)
c = {'Python', 'java', 'Go', 'C++', 'C#'}
print(c)
c.pop()
print(c)

1.2.3 clear():清空操作

c.clear()
print(c)

1.2.4 循环遍历

e = set('hello')
print(e)
for i in e:
    print(i)

1.3 集合生成运算

f = {i for i in range(1, 11)}
print(f)

1.3.1 成员运算

print(1 in f)

1.4 交、并、查集合运算

set1 = {4, 7, 9, 12, 56}
set2 = {4, 7, 12, 32}

1.4.1 交集

print(set1 & set2)
print(set1.intersection(set2))

1.4.2 并集

print(set1 | set2)
print(set1.union(set2))

1.4.3 差集

print(set1 - set2)
print(set2 - set1)
print(set1.difference(set2))

1.4.4 对称差:将不同的元素放在一个集合里

print(set1 ^ set2)
print(set1.symmetric_difference(set2))

1.5 子集、真子集

set3 = {20, 15, 32, 42}
set4 = {20, 15}

1.5.1 <:表示真子集,<=:子集

print(set4 < set3)
print(set4 <= set3)

2 字典

字典
{}
dict
字典中的元素是以键值对方式存在的,key:value

2.1 创建一个空字典

dict_1 = {}

2.1.1 创建字典的方式

字典中的键必须是不可变类型:字符串、数字、组元
字典的值可以是任意类型

dict_2 = {'name': '小明', 'age': 20}
print(dict_2)
dict_3 = dict(name='蘑菇', age=30)
print(dict_3)
dict_4 = dict(zip('ABCDE', '12345'))
print(dict_4)

2.1.2 根据键的数量来确定字典中键值对的数量

dict_5 = dict(zip('ABCDE', range(1, 11)))
print(dict_5)

2.1.3 字典生成式

dict_6 = {i: i ** 3 for i in range(1, 6)}
print(dict_6)

2.2 查找字典中元素

a = dict_2['name']
print(a)

# 如果找的键不存在,报错
# b = dict_2['zone']
# print(b)

2.3 代替字典中的值

dict_2['name'] = '猪小妹'
print(dict_2)
# 如果替换字典中不存在的键的值,等于添加
dict_2['zone'] = '123'
print(dict_2)

2.4 循环遍历

for i in dict_2:
    print(i, '--->', dict_2[i])

2.5 len()

print(len(dict_2))

2.6 获取字典中所有的键keys()

print(dict_2.keys())

2.7 获取字典中所有的值value()

print(dict_2.values())

2.8 获取字典中所有的键值对items()

print(dict_2.items())

for key, value in dict_2.items():
    print(key, '--->', value)

2.9 删除字典中的元素:

2.9.1 pop():通过删除键值的方式删除键值对

a = dict_2.pop('zone')
print(a)
print(dict_2)

2.9.2 popitem():删除字典中最后一个键值对

# 如果字典为空,报错,ketError
b = dict_2.popitem()
print(b)
print(dict_2)

你可能感兴趣的:(Python笔记,python,开发语言)