首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

第57讲Python学习笔记之列表和元组

‍‍小朋友们好,大朋友们好!

我是猫妹,一名爱上Python编程的小学生。

什么是列表

实际上,列表是序列中的一种。

在Python中,序列有三种:列表、元组、字符串。

列表的创建

在Python中,使用[]表示列表,其创建方式为:

列表名 = [元素1, 元素2, ... , 元素n]

比如:

items = []                                # 创建一个空列表

items = ["红", "黄", "蓝"]                # 创建一个包含3个元素的列表

items = [1, 2, "python", True, False]     # 列表元素可以是不同的数据类型

items = [[1, 2], [3, 4], [5, 6]]          # 列表元素还可以是列表

列表和数组有什么区别?

数组元素的数据类型必须相同,但是列表元素却不需要。

数组可以进行四则运算,但是列表不可以。

Python中,列表是自带的,但是数组却需要引入numpy模块。

列表的基本操作

获取元素

列表中使用“下标”的方式来获取。

第一个元素下标是0,正向递增。

最后一个下标是-1,反向递减。

修改元素

使用“下标”的方式来修改一个元素的值。

增加元素

有2种方法:insert()和append()。

insert():在列表任意位置插入元素

append():在列表“末尾”添加元素

删除元素

我们可以使用3种方式删除列表中的某个元素:

del:删除某一个元素,根据“下标”来删除

pop():删除某一个元素,默认是最后一个

remove():删除某一个元素,根据“值”来删除

总结一下删除元素的方法:

del、pop()、remove()这3种方式都会修改原列表

如果知道想要删除的值在列表中的下标,可以使用del和pop()

如果不知道想要删除的值在列表中的下标,只知道值是什么,可以使用remove()。

如果不知道列表元素个数,却想要删除最后一个元素,可以使用pop()

11

获取列表长度

len(列表名)

获取元素个数

列表名.count(元素)

获取元素下标

列表名.index(元素)

合并列表

A.extend(B)

要合并两个列表,我们可以使用两种方式:extend()和列表相加。

但是这两种方式也有本质上的区别。

extend()会修改原列表。

列表相加(+)不会修改原列表。

清空列表

列表名.clear()

截取列表

列表名[m:n]

当n省略时,获取的范围为:m到结尾位置

当m省略时,获取的范围为:开头位置到n

当m和n同时省略,获取范围为:整个列表

遍历列表

for item in 列表名:

  ……

for index, item in enumerate(列表):

  ……

enumerate()函数可以使得遍历列表时,同时拿到每一项的索引(下标)

# 方式1

colors = ["红", "橙", "黄", "绿", "蓝"]

for i, color in enumerate(colors):

  print(i, color)

# 方式2

colors = ["红", "橙", "黄", "绿", "蓝"]

for i in range(len(colors)):

  print(i, colors[i])

检索列表

item in 列表名

item not in 列表名

颠倒列表顺序

列表名.reverse()

大小排序列表

列表名.sort(reverse=False或True)

Fallse,升序,默认

True,降序

数字计算

max(列表) min(列表) sum(列表)

列表转为字符串

"连接符".join(列表)

列表运算

列表只有加法和乘法运算

二维列表

二维列表可以看作是由一维列表嵌套而成的。对于二维列表来说,它的每一个元素本身又是一个一维列表。

什么是元组

元组是使用小括号“()”来创建。

元组和列表的区别:元组的元素不能修改,而列表的元素可以修改。

你可以把元组看成是一种特殊的列表,元素不可以修改的列表。

凡是改变元组内部元素的操作都不允许,包括:增加元素,删除元素、修改元素、加法运算、乘法运算、颠倒顺序、大小排序。

既生亮何生瑜

有了列表,为什么还需要元组?

如果希望某个数据不能被其他程序修改,使用元组更合适,安全效率高。

在实际开发中,我们应该根据程序需要来判断,如果你的数据长度并不固定,那么可能用列表更好。

好了,我们今天就学到这里吧!

我是猫妹,咱们下次见!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230406A00R3Q00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券