Python编程入门-第七章 数据结构 -学习笔记

本文详细介绍了Python中的主要数据结构,包括元组、列表、字典和集合。重点讲述了列表和字典的特性,如列表的排序、列表解析,以及字典的高效查找和操作方法。此外,还展示了如何检查数据类型、创建和操作字典的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第7章 数据结构

Python提供的主要数据结构包括:元组、列表、字典和集合。其中又以列表和字典为主,列表按顺序存储数据,而字典像小型数据库,使用键高效地存储和检索数据。
一、type命令
某些情况,需要检查值或者变量的数据类型,就需要使用内置命令type。
如:

type(5)

#numnote.py
def numnote(lst):
    msg=[]
    for num in lst:
        if num<0:
            s=str(num)+' is negative'
        elif 0<=num<=9:
            s=str(num)+' is adigit'
        msg.append(s)
    return msg

numnote([1,5,-6,22])
[‘1 is adigit’, ‘5 is adigit’, ‘-6 is negative’, ‘-6 is negative’]

六、列表排序
函数sort()总是按升序排列元素,如果要按相反顺序,则在调用sort后再调用reverse函数。

七、列表解析
列表解析是一种用于创建列表的特殊表示法,如下例

[n*n for n in range(1,11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
可以快捷的创建列表。
如果要创建一个列表,它包含前10个自然数的立方,则如下:
[n*n*n for n in range(1,11)]
[1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]
也可以:
[c for c in ‘apple’]
[‘a’, ‘p’, ‘p’, ‘l’, ‘e’]
列表解析还有一种常见的用途,是以某种方式修改现有列表:
lista=[‘apple’,’banana’,’peal’]
listA=[c.capitalize() for c in lista]
lista
[‘apple’, ‘banana’, ‘peal’]
listA
[‘Apple’, ‘Banana’, ‘Peal’]

又如:

nums=[-1,2,8,-65,9,13]
results=[num for num in nums if num>=0]
results
[2, 8, 9, 13]

八、字典
Python字典利用存储键-值对实现效率极高的数据结构。通过大括号表示。

color={‘red’:1,’blue’:2,’green’:3}
color
{‘red’: 1, ‘blue’: 2, ‘green’: 3}
其中,’red’为键,对应的值为1。
与列表类似,字典也是可变的。
但对于字典来说,字典键必须是唯一的,而且必须是不可变的。而对于值没有这些要求。
1、字典函数
d.items():返回一个由字典d的键-值对组成的视图
d.keys():返回一个由字典d的键组成的视图
d.values():返回一个由字典d的值组成的视图
d.get(key):返回与key相关联的值
d.pop(key):删除键key并返回与之相关联的值
d.popitem():返回并删除字典d中的某个键值对
d.clear():删除字典d中所有元素
d.copy():复制字典d
d.fromekeys(s,t):创建新字典,其中键来自s,值来自t
d.setdefault(key,.v):如果键key包括在字典d中,则返回其值;否则返回v并将(key,v)添加到字典d中
d.update(e):将e中的键值对添加到字典中d中;e可能是字典,也可能是键值对序列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值