Python编程笔记(2)列表、元组及Python代码实现

上节讲述了序列,这节讲述列表、元组。
列表和元组的主要不同在于列表是可以修改的,而元组不可以。


序列、列表、元组

一、列表

(1)函数 list

可以使用字符串来创建列表。
要将字符列表转换为字符串使用join


示例代码

(2)基本的列表操作

--修改列表:给元素赋值

使用普通赋值语句

--删除元素

只需使用 del 语句即可

--给切片赋值

通过使用切片赋值,可将切片替换为长度与其不同的序列。
使用切片赋值还可在不替换原有元素的情况下插入新元素。

(3)列表方法

--append

方法 append 用于将一个对象附加到列表末尾
它不会返回修改后的新列表,而是直接修改旧列表

--clear

方法 clear 就地清空列表的内容。
这类似于切片赋值语句 lst[:] = []。

--copy

常规复制只是将另一个名称关联到列表。
要让 a 和 b 指向不同的列表,就必须将 b 关联到 a 的副本。
这类似于使用 a[:] 或 list(a) ,它们也都复制 a 。

--count

方法 count 计算指定的元素在列表中出现了多少次。

--extend

方法 extend 让你能够同时将多个值附加到列表末尾。
这可能看起来类似于拼接,但存在一个重要差别,那就是将修改被扩展的序列。
拼接操作并非就地执行的,即它不会修改原来的列表。要获得与 extend 相同的效果,可将列表赋给切片。

--index

方法 index 在列表中查找指定值第一次出现的索引。

--insert

方法 insert 用于将一个对象插入列表。

--pop

方法 pop 从列表中删除一个元素(末尾为最后一个元素),并返回这一元素。
Python没有提供 push ,但可使用 append 来替代。

--remove

方法 remove 用于删除第一个为指定值的元素。
remove 是就地修改且不返回值的方法之一。不同于 pop 的是,它修改列表,但不返回任何值。

--reverse

方法 reverse 按相反的顺序排列列表中的元素。
注意到 reverse 修改列表,但不返回任何值(与 remove 和 sort 等方法一样)。
如果要按相反的顺序迭代序列,可使用函数 reversed 。这个函数不返回列表,而是返回一个迭代器。你可使用 list 将返回的对象转换为列表。

--sort

方法 sort 用于对列表就地排序。就地排序意味着对原来的列表进行修改,使其元素按顺序排列,而不是返回排序后的列表的副本。
为获取排序后的列表的副本,另一种方式是使用函数 sorted 。这个函数可用于任何序列,但总是返回一个列表。
如果要将元素按相反的顺序排列,可先使用 sort (或 sorted ),再调用方法 reverse ,也可使用参数reverse。

--高级排序

方法 sort 接受两个可选参数: key 和 reverse 。
要根据长度对元素进行排序,可将参数 key 设置为函数 len 。
对于另一个关键字参数 reverse ,只需将其指定为一个真值( True 或 False ),以指出是否要按相反的顺序对列表进行排序
函数 sorted 也接受参数 key 和 reverse 。在很多情况下,将参数 key 设置为一个自定义函数很有用。


示例代码

完整代码请私信回复“Python编程笔记2”

二、元组

与列表一样,元组也是序列,唯一的差别在于元组是不能修改的。
元组语法很简单,只要将一些值用逗号分隔,就能自动创建一个元组。
元组还可用圆括号括起。
空元组用两个不包含任何内容的圆括号表示。
一个值元组,也必须在它后面加上逗号。
元组的切片也是元组,就像列表的切片也是列表一样。
它们用作映射中的键(以及集合的成员),而列表不行。
有些内置函数和方法返回元组。

--tuple

tuple 的工作原理与 list 很像:它将一个序列作为参数,并将其转换为元组 。如果参数已经是元组,就原封不动地返回它。


示例代码

想要完整代码的朋友,可toutiao搜索“编程研究坊”关注后s信我,回复“Python编程笔记2“获取

你可能感兴趣的:(Python编程笔记(2)列表、元组及Python代码实现)