龙空技术网

第八天:职场宝妈挑战PYTHON编程之容器类型自学记录,谁最重要

馨文视界 411

前言:

而今姐妹们对“有序列表中默认的编号类型是”都比较注意,你们都需要了解一些“有序列表中默认的编号类型是”的相关文章。那么小编在网摘上网罗了一些关于“有序列表中默认的编号类型是””的相关知识,希望看官们能喜欢,兄弟们快快来学习一下吧!

给自己定了个学习计划,计划二十天学完基础语法,然后花十天针对性地做100道练习题,以便对基础语法能有较深的理解和应用,之后准备实操爬虫和数据分析项目(满足我目前的工作需求),所有学习过程都一一进行记录和分享。——题记

容器类型的数据,顾名思义就是用来装数据的容器,这样做便于管理和使用数据。Python内置的数据类型如序列(列表、元组等)、集合和字典等可以容纳多项数据,称它们为容器类型的数据。

1 序列

序列(sequence)是一种可迭代且元素有序的容器类型的数据。

序列包括列表(list)、字符串(str)、元组(tuple)和字节序列 (bytes)等。

1.1 序列的索引操作

既然数据是有序的,那就可以按需进行索引,取出想要的数据值。

序列示例:Hello字符串。

可以看出,序列中的元素都是有序的且都带有序号,序号就叫作索引。索引分正值索引和负值索引,注意:正值索引0表示第一个元素,负值索引-1表示最后一个元素。

个人理解:无论正副索引,索引号越大元素越靠后,索引号越小元素越靠前。

那如何访问(取)序列中的元素呢?

通过下标运算符访问,既中括号[ ],中括号内带有参数(索引序号),对于序列类型的数据 ,这个参数就是元素的索引序号。

实操如下:

理解分析:首先定义一个a变量并给他赋一个字符串‘Hello’,a[0](正值索引)或a[-5](负值索引)表示索引字符串的第一个元素,同理a[4]或a[-1]表示索引字符串最后一个元素。那a[5]为什么会报错呢?因为字符串‘Hello’一共是由5个字母组成的,从索引序号0开始,一个索引序号存放一个字母,当索引序号为4的时候,第5个字母存放完毕,所以当你通过索引序号5去访问字符串的第6个元素的时候,程序会报索引超过范围,字符串根本就没第6个字母。max(a),max“最大”的意思,表意就是返回字符串a中,索引序号最大的元素既最后一个元素,同理min(a)返回索引序号最小的元素也既第一个元素。len(a),len长度、个数的意思,返回字符串序列的长度既元素个数。

1.2 加和乘操作

和数学加乘有区别,这里加(+) 运算符用于将两个序列连接起来,乘(*)运算符用于将两个序列重复多次。

1.3 切片操作

切片(Slicing)就是从序列中切分出小的子序列,语法为[start:end:step]。其中,start是开始索引 ,end是结束索引,step是步长(切片时获取的元素的间隔,可以为正整数,也可以为负整数)。注意:切下的小切片包括start位置的元素,但不包括end位置的元素 ,start和end都可以省略。

例如:字符串变量a进行切片操作[1:3],开始索引为1,结束索引 为3,省略步长(默认值为1)。

分析理解:不难看出,start开始索引、end结束索引和step步长都是可以省略的,如没指定start,默认从第一个元素开始切;如没指定end默认切到最后一个元素;如没指定step,默认步长为最小值1。

接下来进一步理解步长。

例如:对字符串变量a进行切片操作[0:3:2],开始索引为0,结束索引为3,步长为2。

1.4 成员测试

成员测试运算符有两个:in和not in,in用于测试是否包含某一个元素,not in用于测试是否不包含某一个元素。

实操举例说明:

2 列表

列表(list)是一种可变序列类型,我们可以追加、插入、删除和 替换列表中的元素。

2.1 创建列表

两种方法:一是list(iterable)函数:参数iterable是可迭代对象(字符串、列表、 元组、集合和字典等);二是 [元素1,元素2,元素3,⋯]:指定具体的列表元素,元素之间以 逗号分隔,列表元素需要使用中括号括起来。

列表类型实操:

2.2 追加元素

追加单个元素:使用列表的append(x)方法。

追加对个元素:使用加(+)运算符或列表的extend(t)方法。

想起之前学模块导入方式,导入模块所有元素后,需要用”模块名.元素”访问,感觉和这里所提的访问类的方法有点类似。

2.3 插入元素

可以使用列表的list.insert(i,x)方法, 其中,i指定索引位置,x是要插入的元素。

2.4 替换元素

采用赋值方式即可替换,如:list[1]=100。

2.5 删除元素

使用列表的list.remove(x)方法,如果找到匹配的元素x,则删除该元素,如果找到多个匹配的元素,则只删 除第一个匹配的元素。

替换和删除比较好理解,这里就不做过多说明了。

3 元组

元组(tuple)是一种不可变序列类型。

3.1 创建元组

两种方法:一是tuple(iterable)函数:参数iterable是可迭代对象(字符串、列表、元组、集合和字典等);二是(元素1,元素2,元素3,⋯):指定具体的元组元素,元素之间以逗号分隔。对于元组元素,可以使用小括号括起来,也可以省略小括号。

3.2 元组拆包

创建元组,并将多个数据放到元组中,这个过程被称为元组打包。与元组打包相反的操作是拆包,就是将元组中的元素取出,分别赋值给不同的变量。

将元组(102,'张三')拆包到变量s_id和s_name。

4 集合

集合(set)是一种可迭代的、无序的、不能包含重复元素的容器类型的数据。

4.1 创建集合

可以通过以下两种方式创建集合:

一是 set(iterable)函数:参数iterable是可迭代对象(字符串、列表、 元组、集合和字典等);二是 {元素1,元素2,元素3,⋯}:指定具体的集合元素,元素之间以逗号分隔。对于集合元素,需要使用大括号{}括起来。

理解:与序列很相似,理解序列后这个比较好理解。

4.2 修改集合

常用的方法如下:

add(elem):添加元素,如果元素已经存在,则不能添加,不会抛出错误。

remove(elem):删除元素,如果元素不存在,则抛出错误。

clear():清除集合。

5 字典

字典(dict)是可迭代的、通过键(key)来访问元素的可变的容器类型的数据。

由两部分视图构成:键视图和值视图。键视图不能包含重复的元素值视图能。在键视图中,键和值是成对出现

理解:一key对应一值,因为需要通过key来获取值,所以key是唯一的不能重复,但是值是可以相同的,可以重复。

5.1 创建字典

两种方法:一是通过dict()函数;二是{key1:value1,key2:value2,...,key_n:value_n}:指定具体 的字典键值对,键值对之间以逗号分隔,最后用大括号括起来。

5.2 修改字典

字典的修改是针对键和值同时操作的,包括添加、替换和删除(其实就是增删改)。

5.3 访问字典视图

三种方法:

items():返回字典所有键值对视图。

keys():返回字典视图。

values():返回字典视图。

5.4 遍历字典

用昨天学的循环语句遍历字典,如下:

总结

今天学了序列(列表和元组)、集合和字典几种容器类型的数据,都是可迭代的,最大特点如下:

序列元素是有序的。其中列表可变的,元组不可变。集合的元素无序且不重复。字典通过键访问元素,由键和值视图构成,其中键视图不能包含重复的元素。

今天学习结束,理解起来不是很难,但知识点很多,需要多回顾,搞清楚这些容器的定义和操作。有好的意见或建议的友友,欢迎留言交流,感谢!

2022年5月22日 阴天 心情 有点懵圈

标签: #有序列表中默认的编号类型是