python基础教程学习笔记 —列表和元祖(二)

列表的基本操作

列表是可以改变的。

1.改变列表,元素复制

使用所有标记为某个特定的,位置明确的元素复制,如x[1]=2

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

同时不能为一个位置不存在的元素进行复制,即赋值位置大于列表总长度

>>> x[100]=3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list assignment index out of range
>>> 
2.删除元素

可以通过del语句实现

>>> del x[2]
>>> x
[1, 2, 4]
>>> 
3.分片赋值
>>> name=list('perl')
>>> name
['p', 'e', 'r', 'l']
>>> name[2:]=list('ar')
>>> name
['p', 'e', 'a', 'r']
>>> 

使用分片赋值时,可以使用与原序列不等长的序列将分片替换

>>> name[1:]=list('abcdefghijklmnopq')
>>> name
['p', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q']
>>> 

分片赋值可以在不需要替换任何原有元素的情况下插入新的元素

>>> number=[1,5]
>>> number
[1, 5]
>>> number[1:1]=[2,3,4]
>>> number
[1, 2, 3, 4, 5]
>>> 

同时也可以删除元素

>>> number[1:4]=[]
>>> number
[1, 5]
>>> 

列表方法

1.append方法

在列表末尾增加新的对象

>>> number.append(6)
>>> number
[1, 5, 6]
>>> 
2.count方法

统计某个元素在列表中出现的次数

>>> number.count(1)
1
>>> 
3.extend方法

extend在列表尾部追加多个值,即用新列表扩展原有的列表,而append只能一次添加一个值。

>>> number.extend([7,8,9])
>>> number
[1, 5, 6, 7, 8, 9]
>>> 
4.index方法

index方法用于从列表中找出某个值第一个匹配项的索引位置

>>> number.index(1)
0
>>> 
5.insert方法

将对象插入到列表中,同时insert也可以用分片赋值来实现。

>>> number.insert(1,2)
>>> number
[1, 2, 5, 6, 7, 8, 9]
>>> 
6.pop方法

默认移除列表中最后一个元素,并且返回该值

>>> number
[1, 2, 3, 4, 7, 8, 9]
>>> number.pop()
9
>>> 
7.remove方法

用于移除列表中某个值的第一个匹配项

>>> number
[1, 1, 3, 4, 7, 8]
>>> number.remove(1)
>>> number
[1, 3, 4, 7, 8]
>>> 
8.reverse方法

将列表中的元素反向存放

>>> number.reverse()
>>> number
[8, 7, 4, 3, 1]
>>> 
9.sort方法

sort方法用于将原列表进行排序。

>>> number
[8, 7, 4, 3, 1]
>>> number.sort()
>>> number
[1, 3, 4, 7, 8]
>>> 

元组:不可变序列

元组和列表一样,也是一种序列,只不过元组不能修改,创建元组用“逗号”分隔一些值就自动创建了元组。元组大部分时候是通过圆括号括起来的。

>>> 1,2,3
(1, 2, 3)
>>> 
创建一个值的元组

如果元组中只有一个值,那么也得通过一个逗号隔开,否则就不是元组。

//不是元组
>>> 42
42

//元组
>>> 42,
(42,)
>>> 
tuple函数

tuple函数功能跟list函数基本一样,以一个序列作为参数并把它转为元组。

>>> tuple([1,2,3])
(1, 2, 3)
>>> tuple('abcdefg')
('a', 'b', 'c', 'd', 'e', 'f', 'g')
>>> tuple((1,2,3,4))
(1, 2, 3, 4)
>>> 

总结

  1. cmp(x,y) 比较两个值
  2. len(seq) 返回序列的长度
  3. list(seq) 把序列转换成列表
  4. max(args) 返回序列或者参数集合中的最大值
  5. min(args) 返回序列或者参数集合中的最小值
  6. reversed(seq) 对序列进行反向迭代
  7. sorted(seq) 返回已排序的包含seq所有元素的列表
  8. tuple(seq) 把序列转换成元组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值