10 python中的高级变量类型(列表、元组、字典、字符串)

目录

高级变量类型:

列表:

for循环遍历:

元组:

字典:

字符串:

公共方法:


高级变量类型:

Python 中数据类型可以分为 数字型非数字型

 

非数字型:

  • 字符串

  • 列表

  • 元组

  • 字典

Python 中,所有 非数字型变量 都支持以下特点:

  1. 都是一个 序列 sequence,也可以理解为 容器

  2. 取值 []

  3. 遍历 for in

  4. 计算长度最大/最小值比较删除

  5. 链接 +重复 *

  6. 切片

列表:

  • List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组
  • 专门用于存储 一串 信息
  • 列表用 [] 定义,数据 之间使用 , 分隔
  • 列表的 索引0 开始
  • 索引 就是数据在 列表 中的位置编号,索引 又可以被称为 下标
  • 注意:从列表中取值时,如果 超出索引范围,程序会报错
countries_list = ["China", "Japan", "Germany"]

列表常规操作示意图:

在ipython查看列表的方法:

应用场景

  • 尽管 Python列表 中可以 存储不同类型的数据

  • 但是在开发中,更多的应用场景是

    1. 列表 存储相同类型的数据

    2. 通过 迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作

for循环遍历:

  • 遍历 就是 从头到尾 依次列表 中获取数据
  • 循环体内部 针对 每一个元素,执行相同的操作
  • Python 中为了提高列表的遍历效率,专门提供的 迭代 iteration 遍历
  • 使用 for 就能够实现迭代遍历

元组:

  1. Tuple(元组)与列表类似,不同之处在于元组的 元素不能修改
  2. 元组 表示多个元素组成的序列
  3. 元组Python 开发中,主要用于存储 一串 信息数据 之间使用 , 分隔
  4. 元组用 () 定义
  5. 元组的 索引0 开始
  6. 索引 就是数据在 元组 中的位置编号

创建元组:

创建空元组:

注意:要是创建只有一个值的元组时,需要加上 ,(逗号):

没有加 , 逗号时,显示的类型并不是元组,而是这个值的类型。

加上 ,逗号时:

查看元组的方法:

可以看到元组只有两个方法:

循环遍历元组:

元组的应用:

  • 尽管可以使用 for in 遍历 元组

  • 但是在开发中,更多的应用场景是:

    • 函数的 参数 和 返回值,一个函数可以接收 任意多个参数,或者 一次返回多个数(后面介绍

    • 格式字符串,格式化字符串后面的 () 本质上就是一个元组

    • 让列表不可以被修改,以保护数据安全

格式化字符串:

元组与列表之间的相互转换:

注意转换的时候并不是直接将原来的元组变成列表,实际上就是将一个元组的值,取下来给变成一个列表的值。

而原来的元组还是元组。

列表转换成元组也是同样的道理:

字典:

  • dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型

  • 字典同样可以用来 存储多个数据

    • 通常用于存储 描述一个 物体 的相关信息

  • 和列表的区别

    • 列表有序 的对象集合

    • 字典无序 的对象集合

  • 字典用 {} 定义

  • 字典使用 键值对 存储数据,键值对之间使用 , 分隔

    • key 是索引

    • value 是数据

    • 之间使用 : 分隔

    • 键必须是唯一的

    • 可以取任何数据类型,但 只能使用 字符串数字元组

字典常用操作:

历循环遍:

遍历 就是 依次字典 中获取所有键值对

提示:在实际开发中,由于字典中每一个键值对保存数据的类型是不同的,所以针对字典的循环遍历需求并不是很多

应用场景:

  • 尽管可以使用 for in 遍历 字典

  • 但是在开发中,更多的应用场景是:

    • 使用 多个键值对,存储 描述一个 物体 的相关信息 —— 描述更复杂的数据信息

    • 多个字典 放在 一个列表 中,再进行遍历,在循环体内部针对每一个字典进行 相同的处理

字符串:

  • 字符串 就是 一串字符,是编程语言中表示文本的数据类型

  • 在 Python 中可以使用 一对双引号 " 或者 一对单引号 ' 定义一个字符串

    • 虽然可以使用 \" 或者 \' 做字符串的转义,但是在实际开发中:

      • 如果字符串内部需要使用 ",可以使用 ' 定义字符串

      • 如果字符串内部需要使用 ',可以使用 " 定义字符串

  • 可以使用 索引 获取一个字符串中 指定位置的字符,索引计数从 0 开始

  • 也可以使用 for 循环遍历 字符串中每一个字符

字符串的常规方法操作:

字符串的切片:

切片 方法适用于 字符串列表元组

  • 切片 使用 索引值 来限定范围,从一个大的 字符串切出 小的 字符串

  • 列表元组 都是 有序 的集合,都能够 通过索引值 获取到对应的数据

  • 字典 是一个 无序 的集合,是使用 键值对 保存数据

注意

  1. 指定的区间属于 左闭右开[开始索引, 结束索引) => 开始索引 >= 范围 < 结束索引

    • 起始 位开始,到 结束位的前一位 结束(不包含结束位本身)

  2. 从头开始,开始索引 数字可以省略,冒号不能省略

  3. 到末尾结束,结束索引 数字可以省略,冒号不能省略

  4. 步长默认为 1,如果连续切片,数字和冒号都可以省略

索引的顺序和倒序

  • 在 Python 中不仅支持 顺序索引,同时还支持 倒序索引

  • 所谓倒序索引就是 从右向左 计算索引

    • 最右边的索引值是 -1,依次递减


演练:

注意:

在倒叙时,末尾的引索值为-1,而不是0.

公共方法:

Python 内置函数

Python 包含了以下内置函数:

函数 描述 备注
len(item) 计算容器中元素个数  
del(item) 删除变量 del 有两种方式
max(item) 返回容器中元素最大值 如果是字典,只针对 key 比较
min(item) 返回容器中元素最小值 如果是字典,只针对 key 比较

运算符

运算符 Python 表达式 结果 描述 支持的数据类型
+ [1, 2] + [3, 4] [1, 2, 3, 4] 合并 字符串、列表、元组
* ["Hi!"] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复 字符串、列表、元组
in 3 in (1, 2, 3) True 元素是否存在 字符串、列表、元组、字典
not in 4 not in (1, 2, 3) True 元素是否不存在 字符串、列表、元组、字典
> >= == < <= (1, 2, 3) < (2, 2, 3) True 元素比较 字符串、列表、元组

成员运算符

成员运算符用于 测试 序列中是否包含指定的 成员

运算符 描述 实例
in 如果在指定的序列中找到值返回 True,否则返回 False 3 in (1, 2, 3) 返回 True
not in 如果在指定的序列中没有找到值返回 True,否则返回 False 3 not in (1, 2, 3) 返回 False

注意:在对 字典 操作时,判断的是 字典的键

完整的 for 循环语法

  • Python 中完整的 for 循环 的语法如下:

for 变量 in 集合:
    
    循环体代码
else:
    没有通过 break 退出循环,循环结束后,会执行的代码

应用场景

  • 迭代遍历 嵌套的数据类型时,例如 一个列表包含了多个字典

  • 需求:要判断 某一个字典中 是否存在 指定的 值

    • 如果 存在,提示并且退出循环

    • 如果 不存在,在 循环整体结束 后,希望 得到一个统一的提示

猜你喜欢

转载自blog.csdn.net/lily559/article/details/81268059