内容正文:
3.2数据与结构
Date and Structure
第1课时
中鑫嘉和高级中学
授课人:王娟
1
网购
2
活动1:了解订单数据
网站名称 订单中的数据 Pthon中对应的数据类型
淘宝网 商品名称 字符串
数量 整数
单价 浮点型
申请开票 布尔型(逻辑型)(bool)
3
简单数据类型
简单数据类型:不能分解成更小的数据类型
例如:整数,浮点数,字符串,布尔
int
float
str
bool(逻辑型)
True(真)和False(假)
4
复合数据类型
复合数据类型:
由简单的数据类型或者复合数据类型组成
例如:列表,字典,元组,集合
元组(tuple)、集合(set)、列表(list)、字典(dict)
5
列表:用"[ ]" 标识,列表是可变的,列表中的元素是有序的。
OrderList=[1,2,3,4,5]
复合数据类型
字典:用"{ }"标识,字典是可变的,由索引(key)和它对应的值value组成。
OrderDict={ ‘a’:1,‘b’:2,‘c’:3}
元组:用"( )"标识,内部元素用逗号隔开,元组是不可变的,元组中的元素是有序的。
OrderTuple=(1,2,3,4,5)
集合:用“{ }”标识,集合是可变的,集合中的元素是唯一的,无序的。
Set1={2,3,1,5,7} Set2 ={2,3,4,6}
6
元组
列表
集合
字典
连一连
Set = { , , }
List = [ , , ]
Dict = { :}
tuple=( , ,)
7
活动2:编制订单数据处理程序
当一家店铺接受了大量的订单之后,一般采取“先下单,先发货”的原则; 因此,所有的订单将按照下单的时间顺序放进一个列表中,先放进去的先发货,所有订单排列在一起,像是一群人在排队。
8
活动2:编制订单数据处理程序
使用Python程序可以实现以下功能:
1.添加订单
2.发货
3.查看订单列表
4.退出
listque=[] #定义列表listque存储订单
x=0
while(x!=4): #当x=!4时,执行循环
print('1. 添加订单')
print('2. 发货')
print('3. 查看订单列表')
print('4. 退出')
x=int(input("输入你的选择:")) #输入选择项
if x==1:
y=input("输入订单编号:") #输入订单编号
listque.append(y) #在列表listque中添加订单号
elif x==2:
if len(listque)==0: #如果订单列表为空
print("订单列表为空")
else:
print("发货单号:"+listque.pop(0))
elif x==3:
print("等待发货:",listque) #查询列表listque中的订单号
print()
input("运行完毕,请按回车键退出...")
9
数据结构
数据结构是计算机存储、组织数据的方式
是存在特定关系的数据元素的集合
数据结构可分为逻辑结构和物理结构
集合结构
线性结构
树结构
图结构
逻辑结构
顺序存储结构
链式存储结构
索引存储结构
散列存储结构
物理结构
10
集合结构是一种松散的逻辑结构。
性质:处于同一数据集合中的元素之间除同属该集合这一联系外没有其他的关系。
例如:公众汽车上的所有乘客;存放在仓库的产品
主要操作:查找和排序
几何结构的元素间没有固定的关系,不需要存储关系,往往借助于其他数据结构,如线性表和树
哈希表(散列表):唯一专用于集合类型的数据结构
集合结构
11
线性数据结构
线性数据结构又称为线性表,再线性数据结构中,除首元素没有前趋元素、尾元素没有后继元素外,其他元素都只有一个前趋元素和一个后继元素。数据元素之间是一对一的关系。
当前元素
尾元素
后继元素
前趋元素
首元素
12
队列是一种有限制的线性结构,
它的数据元素只能在一端依次
添加(进队),在另一端依次
删除(出队)。
线性数据结构-队列
13
线性数据结构-队列
7
6
5
4
3
2
1
首元素
尾元素
进队顺序
出队顺序
此处出队
此处进队
1
2
3
4
5
6
7
1
2
3
4
5
6
7
先进先出
14
栈是一种线性的,