python---字典定义、常用方法、特点;数据容器的对比;数据容器的通用操作;字符串大小比较

1.1 字典的定义

      字典提供了可以基于key查找value的场景实现

# 定义一个字典
my_dict1 = {"女帝":"岐国","蚩梦":"万毒窟"}
my_dict2 = {}
my_dict3 = dict()
print(my_dict1,type(my_dict1))
print(my_dict2,type(my_dict2))
print(my_dict3,type(my_dict3))
# {'女帝': '岐国', '蚩梦': '万毒窟'} <class 'dict'>
# {} <class 'dict'>
# {} <class 'dict'>

# 定义重复key的字典
my_dict4 = {"女帝":"岐国","女帝":"万毒窟"}
print(my_dict4,type(my_dict4))
# {'女帝': '万毒窟'} <class 'dict'>  后面的value将前面的value覆盖

# 从字典中基于key获得value
my_dict = {"女帝":"岐国","蚩梦":"万毒窟"}
element = my_dict["女帝"]
print(element)
# 岐国

# 定义嵌套字典
stu_score_dict = {
    "老王":{
        "数学":100,
        "英语":60,
        "语文":90
    },
    "老李":{
        "数学":80,
        "英语":80,
        "语文":80
    },
    "老赵":{
        "数学":60,
        "英语":100,
        "语文":80
    }
}
print(stu_score_dict)
# {'老王': {'数学': 100, '英语': 60, '语文': 90},
#  '老李': {'数学': 80, '英语': 80, '语文': 80},
#  '老赵': {'数学': 60, '英语': 100, '语文': 80}}
print(stu_score_dict["老王"]["数学"])
# 100

注意:键值对中的key不可以为字典,key和value可以为任何类型

           key不允许重复,重复添加相当于覆盖原有数据

           字典不允许下标索引,只能通过key查找

1.2 字典常用方法

# 定义一个字典
my_dict = {"女帝":"岐国","蚩梦":"万毒窟"}

# 更新元素
my_dict["女帝"] = "幻音坊"
print(my_dict)
# {'女帝': '幻音坊', '蚩梦': '万毒窟'}

# 新增元素
my_dict["降臣"] = "玄冥教"
print(my_dict)
# {'女帝': '幻音坊', '蚩梦': '万毒窟', '降臣': '玄冥教'}

# 删除元素
location = my_dict.pop("女帝")
print(location)
# 幻音坊

# 清空元素
my_dict.clear()
print(my_dict)
# {}

# 获取全部的key
my_dict = {'女帝': '幻音坊', '蚩梦': '万毒窟', '降臣': '玄冥教'}
keys = my_dict.keys()
print(keys)
# dict_keys(['女帝', '蚩梦', '降臣'])

# 遍历字典
for element in my_dict:
    print(element)
    print(my_dict[element])
# 女帝
# 幻音坊
# 蚩梦
# 万毒窟
# 降臣
# 玄冥教

# 统计字典内的元素数量
print(len(my_dict))
# 3

 注意:新增元素与更新元素语法一致,若字典存在key则为更新,不存在为新增。

1.3 字典的特点

       可以容纳多个数据,不同类型的数据,每一份数据都是键值对,不支持下标索引,可以修改,支持for循环,不支持while循环

2.1 数据容器的对比

 2.2 数据容器的通用操作

my_list = [1,2,3,4,5,6]
my_tuple = (1,2,3,4,5,6)
my_str = "123456"
my_set = {1,2,3,4,5,6}
my_dict = {"key1":1,"key2":2,"key3":3,"key4":4,"key5":5,"key6":6}

# len元素个数
print(len(my_list))
print(len(my_tuple))
print(len(my_str))
print(len(my_set))
print(len(my_dict))
# 6

# max
print(max(my_list))
print(max(my_tuple))
print(max(my_str))
print(max(my_set))
print(max(my_dict))
# 6
# 6
# 6
# 6
# key6

# 类型转换:容器转元组
print(tuple(my_list))
print(tuple(my_tuple))
print(tuple(my_str))
print(tuple(my_set))
print(tuple(my_dict))
# (1, 2, 3, 4, 5, 6)
# (1, 2, 3, 4, 5, 6)
# ('1', '2', '3', '4', '5', '6')
# (1, 2, 3, 4, 5, 6)
# ('key1', 'key2', 'key3', 'key4', 'key5', 'key6')

# 排序
my_list = [5,2,6,4,1,3]
my_tuple = (5,2,6,4,1,3)
my_str = "526413"
my_set = {5,2,6,4,1,3}
my_dict = {"key5":5,"key2":2,"key6":6,"key4":4,"key1":1,"key3":3}

print(sorted(my_list))
print(sorted(my_tuple))
print(sorted(my_str))
print(sorted(my_set))
print(sorted(my_dict))
# [1, 2, 3, 4, 5, 6]
# [1, 2, 3, 4, 5, 6]
# ['1', '2', '3', '4', '5', '6']
# [1, 2, 3, 4, 5, 6]
# ['key1', 'key2', 'key3', 'key4', 'key5', 'key6']

3. 字符串大小比较

     从头到尾一位一位进行比较,其中一位大,后面就无需比较

     通过ASCⅡ码表,确定字符对应的码值数字来确定大小

print('abc' > 'abd')
# False
print('a' > 'ab')
# False
print('a' > 'A')
# True

(日常美图时间)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三月七꧁ ꧂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值