Python基础(三),, 目录


目录

1.list (1)定义方法 (2)下标 (3)切片 (4)反向遍历 A.[::-1] B.使用内置函数reversed() C.使用列表方法.reverse() (5)列表推导式 (6)列表的常用函数 A.extend() B.append() C.insert() D.pop() E.remove() F.len() G.sorted()与sort() H.enumerate() I.zip() 2.元组 (1)定义方法 (2)特点 (3)应用

1.list

list是一种可变的有序容器,每个元素都拥有自己的下标.列表使用[]定义.

(1)定义方法

x = [1,2,3] #第一种,使用[]y = x #第二种,赋值y = list({1,2,3}) #第三种,使用强制转换函数

(2)下标

下标从0开始,允许负数作为下标,最后一个元素的下标为-1,第一个元素的下标为-n,第i个元素的下标为(i-1)或-(n-i+1).

(3)切片

设x是一个列表,则

x[start:end:step]

为列表的一个切片,start为起始位置,包含,可以省略,end为结束位置,不包含,可以省略,step为步长,可以省略,默认为1.
三者都可以为负数.
技术图片
三者都省略时为整个列表,反向遍历时可以省略start与end,步长设为-1:
技术图片

(4)反向遍历

反向遍历有三种方法:

A.[::-1]

使用切片,像上面一样,步长设为-1

B.使用内置函数reversed()

reversed()会返回一个迭代器,想要获取里面的内容可以转换为list().
技术图片

C.使用列表方法.reverse()

技术图片
前两种方法不会改变列表,列表方法reverse()改变了列表.

(5)列表推导式

列表推导式可用于快速生成有规律性的列表,比如生成包含10个2的列表:

[2 for i in range(10)]

有点类似于把for循环的循环体提到前面.

(6)列表的常用函数

A.extend()

技术图片
extend()类似于直接使用+,但是+不会改变列表本身,而extend()会改变列表本身.

B.append()

技术图片
append()把参数作为一个元素直接追加到列表中.

C.insert()

insert需要两个参数,分别表示插入的下标与插入的值.
技术图片

D.pop()

根据下标删除元素.
技术图片

E.remove()

根据值删除元素,删除第一个出现的元素,就是说对于重复元素仅删除第一次出现的元素.
技术图片

F.len()

列表长度,注意这个不是列表的方法.
技术图片

G.sorted()与sort()

这两个都是排序的方法,sorted()不是列表的方法,把列表作为函数的参数传递,sort是列表的方法,会改变列表本身.
技术图片

H.enumerate()

逐个显示对应的下标,返回的是一个迭代器.想要显示可以转换为列表.
技术图片

I.zip()

列表的并行计算.
技术图片

2.元组

元组是不可变的有序容器,用()表示.

(1)定义方法

x = (1,2,3,4,5) #第一种,使用()y = x #第二种,使用赋值x = tuple('kkkrrr') #第三种,使用tuple强制转换x = 1,2,3,4,5 #第四种,实质上还是第一种,省略了圆括号

(2)特点

用逗号分隔的都是元组,是不可变对象,支持拆包式赋值.
技术图片

(3)应用

交换两个变量:
技术图片
函数的不定长参数:

def fun(arg1,*arg2):    print(arg1)    if arg2 != ():        if len(arg2) == 1:            print(arg2[0])        else:            print(arg2)fun(1)fun(2,3)fun(4,5,6)

技术图片

Python基础(三)

评论关闭