2月21日课后总结

2/21课后总结

练习题讲解

List = []  # 创建一个空列表
while True:
    a = input('请输入你想要入栈或着入队列的数>>>')  # 将输入的数存入a
    if a == 'q':  # 比较a是否为q是则直接结束输入
        break
    else:
        List.append(a)  # a不为q则将其写入列表
flag = 0  # 定义一个变量。作为标记使用
while flag < len(List):  # 此部分为队列形式先入先出
    print('出对列的数>>>', List[flag])  # 出队列
    flag += 1
flag1 = 0  # 定义一个变量。作为标记使用
while flag1 < len(List):  # 此部分为栈形式先入后出
    print('出栈的数>>>', List[len(List)-flag1-1])  # 出栈
    flag1 += 1

列表的内置方法

1. 列表排序
l = [11, 22, 33, 44, 55]

print(id(l))
print(l)
print(id(l[::-1]))
print(l[::-1])  # 用切片的方法使其翻转 [55, 44, 33, 22, 11]
l.reverse()  # 用内置函数使其翻转 [55, 44, 33, 22, 11]
print(id(l))
print(l)

l.sort()  # 从小到大的排序,[11, 22, 33, 44, 55]
print(l)

l.sort(reverse=True)  # 从大到小的排序,[55, 44, 33, 22, 11]
print(l)

l.sort()  # 从大到小的排序,[55, 44, 33, 22, 11]
print(l[::-1])

2. 列表与字符串的比较
l1 = [111, 222, 333, 444]
l2 = [500, 600]

print(l2 > l1)  # 列表的比较是从头开始逐位比较,一旦比较出结果后面都不看

s1 = 'hello'
s2 = 'world'
print(s1 > s2)  # 字符串比较是逐位转成ascll码在进行比较

字典的内置方法

1. 概念
'''
	可以非常精准的存储信息,关键字是dict,用大括号括起来,里面可以存放多个元素。每个元素之间用逗号隔开,元素以k:v键值对的形式存储,k是对v的描述,一般都是字符串,不可重复。v是真实的数据,可以是任意类型,可重复。字典是无序的,不支持索引取值,按k取值
'''
dic = {
    'name': 'hangman',
    'age': 20,
    'hobby': ['read','456']
}

2. 字典的增删改
print(dic['name'])  # 按k取值
dic['name'] = 123  # k存在则修改k对应的值
dic['555'] = 123  # k不存在则添加k和对应的值

dic['hobby'][1] = 888  # 多个值得修改
print(dic.get('name'))  # 按k取值
print(dic.get('name111'))  # 找不到对应k返回空
print(dic.get('name', 666))  # 有对应键的情况下会直接取出
print(dic.get('name555', 666))  # 无对应键的情况下会添加改键,但不会修改字典

del dic['name']  # 删除一对键值
dic.pop('age')  # 弹出一对键值

3. 字典其他一些操作
print(len(dic))  # 计算k的长度
print('name' in dic)  # 判断该键是否存在,not in同此

data = dic.keys()  # 输出为k
data = dic.values()  # 输出为字典的值
data = dic.items()  # 输出字典的键值对

print(dic.popitem())  # 删除一个键值对,并且返回
dic.update({'name': 33, '999999': 999})  # 更新字典已有的k更新值,没有的添加进去
dic = dict.fromkeys(['k1', 'k2', 'k3'], [11])  # 初始化操作
dic.setdefault('k5', 66)  # 如果有就没变化没有加添加

元组

'''
	不可变的列表,小括号括起来元素之间逗号隔开,元素不可改变,不能是任意类型
'''
1. 定义
	t = (1, 2, 3, 4)  # 此为元组
    t1 = (1)  # 此为整型
    t2 = (1,)  # 此为元组
    # 凡能被for遍历的都可用tuple()转为元组
2. 取值
	# 索引取值
3. 长度
	len(t)

集合

"""
	作用:去重、关系运算
	大括号括起来,内部存放多个元素,元素之间逗号隔开,数据类型只能是不可变的类型
	不能直接取值
"""
1. 定义
	s = {111, 222, 333, 444}  # 集合
    s1 = {}  # 空字典
    s2 = set{}  # 空集合
2. 类型转换
'''
	集合是无序的所以由其他类型转过来顺序可能会发生变化
'''
    s = set([1,2,3,4])
    print(s)  # {1, 2, 3, 4}

    print(set((1,2,3,4)))  # {1, 2, 3, 4}

    print(set({'name':'jason','age':20}))  # {'name', 'age'}

    print(set('hello'))  # {'e', 'o', 'l', 'h'}
posted @   橘子熊何妨  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示