Gointerface接口声明实现及作用详解
249
2022-08-27
Python ❀ 列表与元组(python基础教程)
文章目录
1、列表概念
1.1 访问列表元素1.2 索引(从0开始并非1)1.3 列表中的值
2、修改、添加、删除列表元素
2.1 修改列表元素2.2 添加列表元素
2.2.1 末尾添加列表元素2.2.2 插入列表元素
2.3 删除列表元素
2.3.1 以索引删除2.3.2 末尾删除2.3.3 删除值
3、组织排列
3.1 永久性排序3.2 临时性排序3.3 反转输出列表元素3.4 确认列表长度
4、索引错误5、遍历列表
5.1 for循环遍历列表
6、缩进错误与冒号缺失
6.1 缩进错误6.2 冒号缺失
7、数字列表
7.1 使用range()函数7.2 数字列表的统计计算
8、列表中的一部分
8.1 切片8.2 复制列表
9、元组
9.1 元组与遍历
1、列表概念
列表是一系列按照特定顺序排列的元素集合;元素之间互相独立,没有联系;在Python中使用 [] 表示列表,其中元素使用 , 互相隔离;
a = ["aaa","bbb","ccc",11,22,33,44]print(a)
输出结果:
['', 'bbb', 'ccc', 11, 22, 33, 44]
1.1 访问列表元素
列表是一个有序集合,因此要访问列表中的元素,只需要将该元素的索引告诉Python即可返回对应的元素;
print(a[0])
输出结果:
aaa
当请求列表中的元素时,Python只返回元素的值,并不携带括号与引号;也可以将元素的返回值作为字符串进行一些其他操作,如首字母大写等;
print(a[0].title())
输出结果:
Aaa
1.2 索引(从0开始并非1)
在Python中第一个元素的索引号为0,并不是1;列表的最后一个元素索引为 -1, 当然可以使用正常的排序索引获取末尾值;
a = ["aaa","bbb","ccc",11,22,33,44]print(a[0])print(a[1])print(a[-1])print(a[6])
输出结果:
aaabbb4444
1.3 列表中的值
可以使用列表中的值进行其他操作,如字符串的拼接,数字的运算等;
a = ["aaa","bbb","ccc",11,22,33,44]txt = a[0] + a[1]num = a[3] + a[4]print(txt,num)
输出结果:
aaabbb 33
2、修改、添加、删除列表元素
列表的创建大多数都是动态的,随着程序的运行而增加、修改、删除元素;
2.1 修改列表元素
若需要修改某个列表其中的元素,可以通过元素的索引进行修改,如下代码:
a = ["aaa","bbb","ccc",11,22,33,44]a[0] = 'ddd'print(a[0])
输出结果:
ddd
2.2 添加列表元素
添加元素分为末尾添加和插入两种;
2.2.1 末尾添加列表元素
a = ["aaa","bbb","ccc",11,22,33,44]a.append('eee')print(a[-1])
输出结果:
eee
2.2.2 插入列表元素
a = ["aaa","bbb","ccc",11,22,33,44]a.insert(3,'fff') #在索引为3的位置添加字符串为fff的值print(a[3])
输出结果:
fff
2.3 删除列表元素
在删除元素时也分别有两种删除方法:以索引号进行元素删除操作、末尾删除元素、直接删除元素的值;
2.3.1 以索引删除
使用del()方法删除需要明确知道所删除元素值的相对应索引;
a = ["aaa","bbb","ccc",11,22,33,44]del a[1]print(a)
输出结果:
['aaa', 'ccc', 11, 22, 33, 44]
2.3.2 末尾删除
使用pop()删除会返回删除的内容,因此可以将其赋值给某一个变量进行调用并进行其他操作;
a = ["aaa","bbb","ccc",11,22,33,44]b = a.pop(3)print(a)print(b)
输出结果:
['aaa', 'bbb', 'ccc', 22, 33, 44]11
当删除的元素不需要被使用时,推荐使用del()方法删除;若是删除的元素仍需要被再一次调用,推荐使用pop()方法;
2.3.3 删除值
当不清楚元素的索引时,可以直接操作删除列表中某元素的值;
a = ["aaa","bbb","ccc",11,22,33,44]a.remove('aaa')print(a)
输出结果:
['bbb', 'ccc', 11, 22, 33, 44]
由于使用remove()删除并无返回信息,因此可以将其删除的内容指定到某个变量,进行留存;
a = ["aaa","bbb","ccc",11,22,33,44]b = "aaa"a.remove(b)print(a)print(b)
输出结果:
['bbb', 'ccc', 11, 22, 33, 44]aaa
当remove()删除完成后,删除的值仍保存在变量中,仍可以进行其他相关操作;
3、组织排列
在创建列表的过程中,元素的排序取决于录入元素的顺序,因此需要控制其排列顺序,以构建的顺序进行排列是非常有必要的;
3.1 永久性排序
使用sort()方法可以使得列表永久性排序;可以使用参数reverse=True进行反向排序; sort()只支持单一的类型数据进行排序,如str或int,否则会报类型错误;
a = ["ddd","aaa","rrr"]a.sort()print(a)a.sort(reverse=True)print(a)
输出结果:
['aaa', 'ddd', 'rrr']['rrr', 'ddd', 'aaa']
若列表内包含两种类型的数据时,sort()排序会报错;
a = ["aaa","bbb",131,223,4,1,14]a.sort()print(a)
输出结果:
Traceback (most recent call last): File "D:\Python\Test\Source\venv\05_study_test.py", line 2, in
3.2 临时性排序
若是需要保留原来的排列顺序,并且以特定的顺序呈现出来,可以使用函数sorted(),也支持传入参数reverse=True进行反向排序; sorted()函数也只能支持单一的类型数据进行排序,否则会报类型错误;
a = [131,223,4,1,14]print(sorted(a))print(a)
输出结果:
[1, 4, 14, 131, 223][131, 223, 4, 1, 14]
3.3 反转输出列表元素
反转输出指的是以现在的元素顺序进行反向输出;
a = [131,223,4,1,14]a.reverse()print(a)
输出结果:
[14, 1, 4, 223, 131]
3.4 确认列表长度
使用len()函数确认列表长度,返回值为int类型;
a = [131,223,4,1,14]b = len(a)print(a)print(type(b))
输出结果:
[131, 223, 4, 1, 14]
4、索引错误
在列表的元素查询比较容易出现的错误为索引错误;
a = [131,223,4,1,14]print(a[10])
输出结果:
Traceback (most recent call last): File "D:\Python\Test\Source\venv\05_study_test.py", line 2, in
如上代码,索引错误最常见的引发原因为列表索引超出范围;
5、遍历列表
遍历列表:对列表中的每个元素执行相同的操作;此行为在代码中被称为循环操作,因此我们可以使用for循环来执行遍历操作;
5.1 for循环遍历列表
循环非常重要,可以自动完成重复的工作;
a = [131,223,4,1,14]for i in a: print(i)
输出结果:
1312234114
如上代码所示,以变量 i 的不同赋值来输出列表 a 中元素的值,最后使用print()打印; for循环每次重复操作结束自动执行换行,可以传递参数end=""修改结束符号是否需要换行;
a = [131,223,4,1,14]for i in a: print(i,end=",")
输出结果:
131,223,4,1,14,
6、缩进错误与冒号缺失
Python根据缩进判断代码行与前一个代码行的关系;
6.1 缩进错误
主要出现以下几种情况:
忘记代码缩进;不必要的缩进;错误的缩进;
a = [131,223,4,1,14]
输出结果:
File "D:\Python\Test\Source\venv\05_study_test.py", line 1 a = [131,223,4,1,14]IndentationError: unexpected indent
缩进错误,出现意想不到的缩进;
6.2 冒号缺失
a = [131,223,4,1,14]for i in a print(i,end=",")
输出结果:
File "D:\Python\Test\Source\venv\05_study_test.py", line 2 for i in a ^SyntaxError: expected ':'
语法错误,缺少冒号;
7、数字列表
若是需要存储一些有规律的数字,那么直接通过列表的编写就显得十分繁琐,因此Python提供了很多的函数,来高效的完成此工作;
7.1 使用range()函数
函数 range() 能够较快的生成一系列数字; 代码格式:
range(起始元素,结束元素,步长)
需要注意的是结束数字为开区间,无法取值,若需要取值结束数字加1即可;
for i in range(1,9,2): print(i)
输出结果:
1357
使用range()函数创建列表;
ls1 = list(range(0,10))print(ls1)
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
7.2 数字列表的统计计算
通过列表计算其元素最大值、最小值、总和;
ls1 = list(range(0,10))print(ls1)a = max(ls1)b = min(ls1)c = sum(ls1)print(a,b,c)
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]9 0 45
8、列表中的一部分
处理Python中的一部分元素被称为切片;
8.1 切片
代码格式:
[起始元素 : 结束元素 : 步长]
切片与range函数一样,结尾取值需要加1;切片的遍历也可以直接使用for循环,与列表的遍历方式完全一致(切片后的数据相当于列表的一个子列表)
ls1 = list(range(0,10))print(ls1)print(type(ls1))a = ls1[1:3]print(a)
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
结尾取值如下:
ls1 = list(range(0,10))print(ls1)a = ls1[1:3]print(a)b = ls1[1:3+1]print(b)
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9][1, 2][1, 2, 3]
8.2 复制列表
由于切片的参数,起始元素与结束元素不定义时,则以为全部切片,等同于复制操作;
ls1 = list(range(0,10))print(ls1)a = ls1[:]print(a)
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9][0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
9、元组
在使用Python中有时候我们需要创建一些列不可修改的元素,元组就可以满足这个需求,元组将元素变为不可变类型;
9.1 元组与遍历
代码格式:
(起始元素 : 结束元素 : 步长)
元组看起来与列表一样,使用小括号进行标识,索引方式与列表完全一致,唯一的区别是元素不可修改;
tp1 = tuple(range(0,10))print(tp1)print(type(tp1))
输出结果:
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
元组的遍历与列表完全一致;
for i in tp1[0:3]: print(i)
输出结果:
012
元组不可修改,但是可以给元组进行变量赋值,修改变量的值进而修改元组的内容;
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~