0
点赞
收藏
分享

微信扫一扫

(十一)字典和集合

忍禁 2022-01-26 阅读 83
python

字典和集合

字典里的数据是以键值对形式出现的字典数据和数据顺序没有关系,字典不支持下标,所以无论顺序如何变化只需根据键值进行查找即可

创建字典

1.符号是{}括号

2.值为键值对

3.各个键值对之间通过逗号隔开

# 字典
dict1 = {
    "name": "xiaoming",
    "age": 18,
    "sex": "男"
}
# 创建空字典
dict2 = {}
print(type(dict2))
dict3 = {}
print(type(dict3))

字典常用操作

新增:

# 新增键值对
dict1 = {"name": "xiaoming", "age": 18}
dict1['gender'] = "男"
print(dict1)
# 如果当前key存在就修改它的值

删除:

# 删除字典  del(dict1)
# 新增键值对
dict1 = {"name": "xiaoming", "age": 18}
dict1['gender'] = "男"
del dict1["name"]
print(dict1)
# 如果删除key时候key不存在就报错
"""
{'age': 18, 'gender': '男'}
"""

清空:

# 清空字典
print(dict1.clear())
"""
None
"""

修改:

# 字典的修改
dict1 = {"name": "xiaoming", "age": 18, "gender": "男"}
dict1["name"] = "aaa"
print(dict1)
"""
{'name': 'aaa', 'age': 18, 'gender': '男'}
"""

查找:

# 进行数据的查找
# 字典的查找
dict1 = {"name": "ming", "age": 18}
print(dict1["name"])
"""
ming
"""

通过函数进行查找:

字典序列.get(key,默认值)
# 如果查找的key不存在则返回默认值
# 字典的查找
dict1 = {"name": "ming", "age": 18}
print(dict1.get("name", 190))
"""
ming
"""
keys()
# 将集合使用keys()方法后会返回一个可迭代对象(可以使用for进行遍历)
# 字典的查找
dict1 = {"name": "ming", "age": 18}
print(dict1.get("name", 190))
print(dict1.keys())
"""
dict_keys(['name', 'age'])
"""
values()
# 将集合中的值返回为一个可迭代对象
# 字典的查找
dict1 = {"name": "ming", "age": 18}
print(dict1.get("name", 190))
print(dict1.keys())
print(dict1.values())
"""
dict_values(['ming', 18])
"""
item()查找键值对返回可迭代对象
# 字典的查找
dict1 = {"name": "ming", "age": 18}
print(dict1.items())

"""
dict_items([('name', 'ming'), ('age', 18)])
"""

遍历字典的key

# 字典的查找
dict1 = {"name": "ming", "age": 18}
for key in dict1.keys():
    print(key)

遍历字典的value

dict1 = {"name": "ming", "age": 18}
for value in dict1.values():
    print(value)
    """
    ming
     18
    """

遍历字典

# 字典的查找
dict1 = {"name": "ming", "age": 18}
# for key in dict1.keys():
#     print(key)
for value in dict1.items():
    print(value)
    """
    ('name', 'ming')
    ('age', 18)
    """

集合

创建集合

可以使用{}和set创建集合,如果创建空集合自能通过set创建集合,集合数据具有去重功能

# 集合
set1 = {10, 20, 30, 40}
print(set1)
s2 = {10, 10, 20, 30, 40, 50}
print(s2)
s3 = set("asdfgh")
print(s3)
"""
{40, 10, 20, 30}
{40, 10, 50, 20, 30}
{'g', 'h', 'f', 'a', 'd', 's'}
"""

创建空集合

# 集合
s4 = set()
print(type(s4))
"""
<class 'set'>
"""

集合增加数据的方法

# add()向集合中增加方法
# 集合
s4 = {10, 20}
s4.add(30)
print(s4)
"""
{10, 20, 30}
"""
# 增加数据序列
# 集合
s4 = {10, 20}
s4.update([30, 40, 50, 60])
print(s4)
"""
{40, 10, 50, 20, 60, 30}
"""

集合删除数据

# remove()删除指定数据,如果数据不存在就报错
# 集合
s4 = {10, 20}
s4.remove(10)
print(s4)
"""
{20}
"""
# discard()删除指定数据,如果数据不存在也不报错
# 集合
s4 = {10, 20}
s4.discard(30)
print(s4)
"""
{10, 20}
"""
# pop()删除指定数据,随机删除某个数据,返回这个数据
# 集合
s4 = {10, 20}
s4.pop()
print(s4)
"""
{20}
"""

集合查找数据

in:判断数据在集合序列中

not in :判断数据不在集合中

# 集合
s4 = {10, 20}
print(10 in s4)
"""
True
"""
# 集合
s4 = {10, 20}
print(10 not in s4)
"""
False
"""
举报

相关推荐

0 条评论