Python之组合数据类型(列表、元组、集合、字典)+列表与字典的互相转化

本文详细介绍了Python中的四种基本数据结构:列表、元组、集合和字典。包括它们的定义、创建、访问元素、操作方法以及相互转换。通过实例展示了如何添加、删除、修改元素,以及进行交集、并集、差集等运算。此外,还探讨了列表、元组、集合和字典在实际编程中的应用和注意事项。
摘要由CSDN通过智能技术生成

第1关:列表及操作
任务描述
本关任务:学习列表的定义和表示,了解列表的相关操作。

相关知识
为了完成本关任务,你需要掌握:1.列表是什么,2.如何访问列表元素,3.对列表元素进行操作。

列表是什么
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

列表的数据项不需要具有相同的类型创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

简单来说列表是由一系列元素按特定顺序排列组成。你可以创建包含字母表中所有字母/数字0-9或一些字符串的列表;可以将其他数据类型放入列表中,甚至可以将另一个列表放在列表中。

在 Python 中,用方括号[]来表示列表,并用逗号来分隔其中的元素。

例如:

a = [] #创建一个空的列表
b = [1,2,3,4] #创建一个含数字的大小为 4 的列表
c = [1,‘a’,2,‘b’,3,‘c’,4,‘d’] #创建包含多种数据类型的列表
a = [b,c] #创建包含其他列表的列表
print(a)
[[1,2,3,4],[1,‘a’,2,‘b’,3,‘c’,4,‘d’]]
如何访问列表中的元素
先可以考虑前面所学的字符串类型的数据访问,例如有一字符串:
“abcd”
如果我们需要看它的某个特定位置上的字符是什么,则只要知道它的索引位置就行了,索引位置如下图:

字符串 a b c d
索引 -> 0 1 2 3
索引 <- 0 -3 -2 -1
计算机存储数据的位置都是从0号位置开始存储的,习惯使用从左往右进行访问,特殊情况可从右往左访问,即从0号位置开始,到-1号位置在最右边(最后)往左(前)访问。要访问上面那个字符串"abcd"中的字符b的话,我们可以用这样一种形式:

“abcd”[1] #或 “abcd”[-3]
字符b的索引位置在字符串"abcd"中为1(或-3),所以可以通过加中括号"[]"(中括号内为索引位置)的形式访问。
通常我们习惯将这个字符串赋值给一个变量然后通过变量名进行操作:

a = “abcd”
print(a[1]) #输出变量a储存的字符串索引位置为2的字符
b
与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。使用索引位置来访问列表中的值,同样你也可以使用方括号的形式访问索引位置,如下所示:

list = [‘physics’, ‘chemistry’, 1997, 2000]
print(list[0])
physics

print([‘physics’, ‘chemistry’, 1997, 2000][0])
physics
以上两种形式都可以访问列表list索引位置为0的数据physics,第一个通过变量间接访问,第二个是直接访问,形式均为:

列表[索引位置]
可见当一个变量被赋值为某种数据类型时,该变量就相应变为了赋值的数据类型。例如:

a = 10 #此时a的数据类型为整数类型
a = [‘physics’, ‘chemistry’] #此时变为列表
a[1] #对应 列表[索引位置] 的形式来访问特定位置
若要继续访问列表[‘physics’, ‘chemistry’]中元素字符串physics的某个位置上的字符,可继续采用后面加[]的形式,例如:

a = 10 #此时a的数据类型为整数类型
a = [‘physics’, ‘chemistry’] #此时变为列表
print(a[0]) #打印第一个元素(这里为字符串)
physics

print(a[0][1]) #打印第一个元素的第二个位置上的字符
h
注意[]内的索引数字大小必须小于要访问元素长度,例如:
a = [‘physics’, ‘chemistry’] 以a[x]访问列表元素,则x要小于列表元素个数2并且要大于-3,以a[x][y]访问列表元素(这里是字符串,单个数据元素不用此操作)内的元素时,则y要小于列表元素里的元素长度,例如列表0号元素physics长度为7,则y小于7,且大于-8依次类推。
#####列表的相关操作

列表的相关操作有以下几种:

增加元素
通过使用append()函数来在列表末尾处添加列表元素:

list = [] #创建空列表
list.append(‘Google’) #使用append()添加元素
list.append(‘Runoob’)
print(list)
[‘Google’, ‘Runoob’] #结果
添加的元素按append()函数从上到下的先后顺序在列表中从左至右的顺序存放。

删除元素
通过使用pop()函数来删除列表末尾处的列表元素:

list = [‘Google’, ‘Runoob’]
list.pop()
print(list)
[‘Google’]
这里需要注意的是pop()函数也可以通过指定索引位置来删除列表特定位置的数据,例如:

list = [‘Google’, ‘Runoob’]
list.pop(0)
print(list)
[‘Runoob’]
还可以使用remove()函数来删除指定的内容:

list = [‘Google’, ‘Runoob’]
list.remove(‘Google’)
print(list)
[‘Runoob’]
两种方式都可以将列表中的元素删除,可在不同情形下使用。
######替换元素
如果想要改变一个有数据的列表某个特定位置上的数据,我们可以通过类似赋值的方式进行:

list = [‘Google’, ‘Runoob’]
list[0] = “Baidu”
print(list)
[‘Baidu’, ‘Runoob’]
列表运算符
与字符串一样,列表之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的列表。

Python 表达式 结果 描述
len([1, 2, 3]) 3 计算元素个数
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 连接
[‘Hi!’,] * 4 [‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’] 复制
3 in [1, 2, 3] True 元素是否存在
列表内置函数
Python列表包含了以下内置函数

函数名 描述
len(list) 计算列表元素个数。
max(list) 返回列表中元素最大值。
min(list) 返回列表中元素最小值。
list(str) 将字符串转换为列表。
#使用逗号运算符给多个变量赋值
t1,t2 = [10,30,50],[20,30,50]
print(len(t1))
print(min(t2))
print(max(t1))
#创建一个字符串a
a = “abcd”
print(list(a))
以上实例输出结果:

3
20
50
[‘a’,‘b’,‘c’,‘d’]
编程要求
请仔细阅读右侧代码,结合相关知识,在 Begin-End 区域内进行代码补充,完成列表的相关操作。

测试说明
本关的测试文件是src/step0/list.py,测试过程如下:

平台自动编译并运行list.py,并获取相应的输出。
平台将程序输出与预期输出对比。如果一致则测试通过,否则测试失败。

#codi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦森森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值