python基础-列表 元组 集合 字典区别和用法

python基础-列表 元组 集合 字典区别和用法,第1张

Python中有六个标准的数据类型:Number(数字),String(字符串),List(列表),Tuple(元组),Set(集合),Dictionary(字典)。其中:Number(数字)、String(字符串)、Tuple(元组)是不可变数据,其余三种是可变数据。

转义字符

输出结果

布尔值

布尔值是一个逻辑值,只有真(True)和假(False)

输出结果

Python数据结构包括列表(list)、元组(tuple)、集合(set)、字典(dict)等,这里主要讲解列表,列表有两个特点:

输出结果

修改表中元素

输出结果

列表中插入元素

输出结果

输出列表中的元素

输出结果

元素是否在列表元素中及统计个数

输出结果

查找某个元素在列表中的位置

输出结果

顺序结构

输出结果

if 条件 1

输出结果

if 条件 2

输出结果

循环结构

输出结果

循环语句求和

输出结果

可重复,类型可不同。 类型不同也是跟数组最本质的区别。 python里的列表用“[]”表示: 

对比a和b的结果

列表的 --- 增 -- 删 -- 改 -- 查

循环输出列表内容,在结尾添加指定的内容

字符串是 Python 中最常用的数据类型。 我们可以使用引号('或")来创建字符串。

元组与列表相似,不一样之处在于 元组的元素不能修改。

元组使用小括号,列表使用方括号。

元组建立很简单,只须要在括号中添加元素,并使用逗号隔开便可。

字典是另外一种可变容器模型,且可存储任意类型对象。

字典的每一个键值(key=>value)对用冒号(:)分割,每一个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式以下所示:

d = {key1 : value1, key2 : value2 }

字典函数

集合(set)是一个 无序的不重复元素序列。

可使用大括号 { } 或者 set() 函数建立集合,注意:建立一个空集合必须用 set() 而不是 { },由于 { } 是用来建立一个空字典。

它的主要做用以下: 1.去重,把一个列表变成集合,就自动去重了 。2.关系测试,测试两组数据以前的交集、差集、并集等关系。

关系测试

输出结果

元素的添加和删除

在Python中,元组(Tuple)与列表(List)类似,也是一个有序的序列,但元组是一个不可变对象,其一旦初始化后便无法进行修改。

一般在创建元组时,分为创建空元组和非空元组,其创建方式如下:

从上面可以看到,我们只需要把元组的所有元素放在 小括号 () 里面,每个元素之间通过 逗号 , 间隔起来即可,当然和列表一样,元组中同样允许存放不同数据类型的元素。

元组中使用的 () 是常见的数学运算符,如果参考列表的创建,如下:

从上面可以看到,我们创建出来的压根就不是元组类型。那么我们想创建一个只包含一个元素的元组时,需要怎么创建呢?

很简单,只需要在元素后加上一个 逗号 , ,这样创建出来就是一个元组。

当我们需要访问元组中的元素,可以类似列表一样通过索引取值或切片取值。

如果访问的索引不存在,那么会报错: IndexError: tuple index out of range

在元组中,可以像列表一样使用切片,语法为: 元组[start:end:step] ,通过切片可以获取到元组中指定范围的元素,返回结果是一个新元组。在这里,需要注意切片的规则是左闭右开,也就是说包含头部 start,但不包含尾部 end ,而 step 则表示切片的步长,需要每间隔 step 个元素取一次。

在上面我们提到了元组是不可变的,这就意味着我们创建一个元组之后,不能再去改变其值了,比如下面这样就会出现报错:

假设元组中存在元素是一个可变对象,如果我们不改变元组,但改变了可变对象的值,又会得到怎么的结果呢?请看下面实例:

从上面可以看到,元组中的第 2 个元素似乎发生了变化,这岂不是和上面说的元组不可变自相矛盾了吗?

其实,我们说的元组不可变,指的是元组中各元素的指向永远保持不变。在上面 *** 作中,元组中第 2 个元素指向的一直是 列表nums ,我们改变的其实不是元组的元素,而只是改变了 列表nums 中的元素。

元组是不可变的,因此我们就不能删除元组中的元素,但是,我们可以通过 del 语句删除整个元组。

通过关键字 in ,可检查当前元组中是否包含指定元素,返回结果为布尔值 True 或 False。

通过关键字 in ,还可以用于遍历当前元组。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11696995.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存