Python学习笔记(1)---列表和元

2023-01-31 01:01:15 python 学习笔记

什么是列表?

列表是一种数据项构成的有限序列,即按照一定的线性顺序,排列而成的数据项的集合

列表的介绍

一、更新列表

1.元素赋值

>>> a=[1,3,4,5]

>>> a[1]=10 #改变a中第二个值为10

>>> a

[1, 10, 4, 5]

2.增加元素

>>> a=[1,10,4,5]

>>> a.append(6) #用法:list.append(obj)

>>> a

[1, 10, 4, 5, 6]

3.删除元素

>>> a=[1,10,4,5,6]

>>> del a[2] #删除第三个元素

>>> a

[1, 10, 5, 6]

4.分片赋值

>>> b=list('abc') #list函数将字符串转化为列表

>>> b

['a', 'b', 'c']

>>> b[1:1]='d' #使用分片赋值增加元素

>>> b

['a', 'd', 'b', 'c']

>>> b[1:2]='h' #使用分片赋值修改元素

>>> b

['a', 'h', 'b', 'c']

>>> b[2:3]='' #使用分片赋值删除元素

>>> b

['a', 'h', 'c']

二、列表方法

1.统计元素个数 count

用法:list.count(obj)

>>> a=list('hello,world')

>>> a.count('l')

3

2.在列表末尾追加另一个序列 extend

用法:list.extend(seq)

>>> a=['hello']

>>> b=['world']

>>> a.extend(b)

>>> a

['hello', 'world']

注:可用分片赋值实现同等效果>>> a[len(a):]=b

与连接符号 +的区别

>>> a=['hello']

>>> b=['world']

>>> a+b

['hello', 'world']

>>> a #extend已将a的值改变

['hello']

3.查找第一个匹配的元素index

用法:list.index(obj)

>>> a=['hello', 'world']

>>> a.index('hello')

0

4.插入 insert

用法 list.insert(index,obj)

>>> a=['hello', 'world']

>>> a.insert(0,'Goodmoring') #插在0的位置上

>>> a

['goodmoring', 'hello', 'world']

5.移除元素 pop (注:唯一一个技能修改元素又能返 回元素值的方法)

用法:list.pop(obj=list[-1])

>>> x=[1,2,3]

>>> x.pop() #不加参数,删除最后一个值,并返回元素值

3

>>> print(x)

[1, 2]

>>> y=[1,2,3]

>>> y.pop(1) #添加参数1,删除编号为1的元素值

2

>>> print(y)

[1, 3]

6.移除列表中第一个匹配项 remove

用法:list.remove(obj)

>>> x=[1,2,3,2]

>>> x.remove(2)

>>> print(x)

[1, 3, 2] #只删除第一个匹配值2

7.反向列表中的元素 reverse

用法:list.reverse()

>>> x=[1,2,3]

>>> x.reverse()

>>> print(x)

[3, 2, 1] #顺序取反

8.排序 sort

用法:list.sort(func) func为可选参数

>>> x=[4,7,2,5]

>>> y=x[:] #此处与y=x的区别:y=x指向的是同一个列表,若不分片赋予,则x同样被排序

>>> y.sort()

>>> print(y)

[2, 4, 5, 7]

>>> print(x)

[4, 7, 2, 5]

同样的操作的方法可使用sorted

用法:sorted(list)

>>> x=[4,7,2,5]

>>> y=sorted(x)

>>> print(x)

[4, 7, 2, 5]

>>> print(y)

[2, 4, 5, 7]

sort可选参数有两个,即key和reverse

>>> field=['study','python','is','happy']

>>> field.sort(key=len) #按照长度进行排序

>>> field

['is', 'study', 'happy', 'Python']

>>> field.sort(key=len,reverse=True) #按照长度进行反向排序

>>> field

['python', 'study', 'happy', 'is']

9.清空列表 clear

用法:list.clear

>>> field

['python', 'study', 'happy', 'is']

>>> field.clear()

>>> field

[]

10.复制列表 copy ,类似于a[:]

用法:list.copy

>>> x=[1,2,3]

>>> y=x.copy()

>>> y

[1, 2, 3]

三、元组

元组与列表类似,但是元组的元素不能修改

1.创建元组:用逗号分隔一些值,则自动创建元组

>>> 1,2,3

(1, 2, 3)

>>> 1,

(1,) #逗号很重要,没有逗号是创建不了元组的

>>> 1

1

使用tuple函数创建元组

>>> x=[1,2,3]

>>> tuple(x) #可以将列表改成元组

(1, 2, 3)

2.元组基本操作

(1)访问元组

>>> x=(1,2,3,4)

>>> x[1]

2

>>> x[2:]

(3, 4)

(2)连接组合元组

>>> x=(1,2,3,4)

>>> y=(5,6)

>>> x+y

(1, 2, 3, 4, 5, 6)

(3)删除元组

>>> y=(5,6)

>>> del y

>>> y #此时元组已不存在

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

NameError: name 'y' is not defined

相关文章