10-数据存储

数据存储

内容

  • 列表

  • 元组

  • 集合

  • 字典

  • 公共函数

  • 切片

  • 推导式


1. 列表

1.1 列表的概念

列表是一种存储大量数据的存储模型。

1.2 列表的特点

列表具有索引的概念,可以通过索引操作列表中的数据。列表中的数据可以进行添加、删除、修改、查询等操作。

1.3 列表的基本语法

创建列表: 变量名 = [数据1,数据2,……]

获取列表数据: 变量名[索引]

修改列表数据: 变量名[索引] = 值
在这里插入图片描述

1.4列表常用方法

在这里插入图片描述

在这里插入图片描述


##2. 元组

2.1 元组的概念

元组是一种存储固定数据的存储模型。

2.2 元组的特点

元组具有索引的概念,可以通过索引操作元组中的数据。元组中的数据可以进行查询操作,但不能进行添加、删除、修改操作。

2.3 元组的基本语法

   创建元组:        变量名 = (数据1,数据2,……)

获取元组数据: 变量名[索引]

在这里插入图片描述

2.4 元组常用方法

在这里插入图片描述

2.5注意事项

   元组中的数据如果是非引用类型数据,不允许修改

元组中的数据如果是引用类型对象,该对象不允许替换,而对象的属性值可以发生改变

2.6元组的特殊应用

自动组包:将多个数据赋值给一个变量时,多个数据将包装成一个元组,将元组赋值给变量,该过程称为自动组包。

       应用场景:设置返回值为多个值       

return 1,2,3 等同于 return (1,2,3)

       应用场景:动态字符串赋值传值方式   

print(“坐标%d,%d” % (10,20))

自动解包:将元组赋值给多个变量时,如果元组数据的数量与变量的数量相同,元组将被自动拆分成多个值,并赋值给对应变量,该过程称为自动解包。

     场景:多个变量接收返回值 

          a,b,c

= func()等同于 a,b,c = (1,2,3)等同于a,b,c
= 1,2,3

       场景:动态字符串赋值取值方式

print(“坐标%d,%d” % (10,20)) 将10给第一个%d,将20给第二个%d


3. 集合

3.1 集合的概念

集合是一种存储大量无序不重复数据的存储模型。

3.2 集合的特点

集合没有索引的概念。集合中的数据可以进行添加、删除等操作。

3.3 集合的基本语法

   创建集合:        变量名 = {数据1,数据2,……}

在这里插入图片描述

3.4集合常用方法

在这里插入图片描述
在这里插入图片描述


4. 字典

4.1 字典的概念

字典是一种使用“键值对结构”存储数据的存储模型。

4.2 字典的特点

字典不具有索引的概念,字典使用键key代替索引,可以通过键操作字典中存储的数据值value。字典可以根据键key进行数据的添加、删除、修改、查询操作。

4.3 字典的基本语法

创建字典: 变量名 = {键1:值1,键2:值2,……}

添加数据: 变量名[键] = 值 (字典中没有对应的键)

获取数据: 变量名[键]

修改数据: 变量名[键] = 值 (字典中存在对应的键)
在这里插入图片描述

4.4字典常用方法

在这里插入图片描述
在这里插入图片描述

4.5注意事项

字典中的键是唯一的

4.6字典的作用

1.当需要存储少量数据,并且期望在编程期以最快的速度获取单个数据, 推荐选择字典。

2.当需要使用非对象格式保存单个对象的属性值,推荐选择字典。


5. 格式转换

在这里插入图片描述


6. for循环

6.1for循环作用

   for循环用于对数据存储模型进行访问遍历

6.2for循环基本语法

for 变量名 in 列表:

____变量相关操作

在这里插入图片描述


7. Range

7.1range的功能

   创建连续的整数

7.2range的基本语法

   格式1:range(m)          生成 0 到 m-1 的整数

   格式2:range(m,n)       生成 m 到 n-1 的整数

   格式3:range(m,n,s)   生成	m 到 n-1 的整数,整数间隔为s

在这里插入图片描述

7.3range的应用场景

   1.配合for循环构造指定次数的循环

        for _ in range(..):

        ____循环执行的代码

   2.快速创建由连续的整数作为数据的列表、元组、集合对象

       list(range(..))

       tuple(range(..))

       set(range(..))

8. 数据存储结构嵌套

8.1数据存储结构嵌套概念

   数据结构嵌套指一种数据结构中包含的数据是另一种数据结构

8.2范例

在这里插入图片描述


9. 公共方法

在这里插入图片描述


10. 切片

10.1切片的作用

   获取列表、元组或字符串中的局部数据

10.2切片基本语法

   容器对象[开始索引:结束索引:步长]

10.3特殊格式:

    省略开始索引:默认开始索引为0

           范例:list1[:5:1]      等同于   list1[0:5:1]  

    省略结束索引:默认结束索引为数据总量

           范例:list1[0::1]      等同于   list1[0:len(list1):1]

    省略步长:每次递增索引数为1

           范例:list1[0:5:]      等同于   list1[0:5:1]  

    负数步长: 反向操作/反向步长操作,需要开始索引、结束索引逆序输入

           范例:list1[5:0:-1]      

    常见格式:

           范例:list1[:5:]       获取索引5之前的数据(不含5)                 范例:list1[4::]       获取索引4之后的数据(含4)  

11. 通用运算符

在这里插入图片描述


12. for…else

12.1 for…else基本语法

   for 变量名 in 列表:

        变量相关操作

    else:

        循环正常运行结束后执行的操作

在这里插入图片描述

12.2注意事项

   1.如果for循环中执行了break语句,则else中的代码将不执行

   2.while循环同样具有while…else语法格式

13. 推导式

13.1推导式基本语法

   基础语法格式:       循环变量 for循环

           范例:list1 = [data for data in range(5)]



   数据处理语法格式:   表达式 for循环

           范例:list1 = [data*5 for data in range(5)]



   数据过滤语法格式:   表达式 for循环 if判断

           范例:list1 = [data for data in range(5) if data > 200]

13.2推导式的作用

   推导式可以快速生成数据存储结构中的数据



   范例1:创建包含1到100所有整数的列表

            list1 = [data for data in range(1,101)] 

   范例2:创建包含1到10的平方和的列表

            list2 = [data**2 for data in range(1,11)]



   范例3:创建字典,key从1到5,value是key的平方

           dict1 = [(data,data**2) for data in range(1,6)]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值