列表和元组的主要区别:
列表可以修改,元组则不能。
列表举例:
test=[‘alice’ , 12]
索引:
序列中的所有元素都是有编号 — 从0开始递增
eg:
>>>greet = ‘Hello’
>>>greet[0]
‘H’
序列都可以通过这种方式进行索引,使用负数索引时,就会从右边开始,—— 最后一个元素的位置编号为-1
字面值可以直接使用索引而不需要一个变量引用。
>>> 'Hello'[1]
'e'
分片—— 可以使用分片操作来访问一定范围内的元素;通过冒号隔开的两个索引来实现
# 简单的举例
>>> number = [1,2,3,4,5,6,7,8,9,10]
>>> number[3:6}
[4,5,6]
>>> number[0:1]
[1]
#————————————————————————————————————————————————————
#实际的应用举例
>>> tag = '<a href="http://www.baidu.com">BaiDu</a>'
>>> tag[9:29]
'http://www.baidu.com'
>>> tag[31:-4]
'BaiDu'
第1个索引的元素时包含在分片内的,而第2个则不包含在分片内
快捷的方式:(左边的索引比右边的晚,结果就是一个空的序列)
1. 如果分片所得部分包括序列结尾的元素,那么只需置空最后一个索引即可
>>> number[-3:]
[8,9,10]
同时也适用于序列开始的元素
>>> number[:3]
[1,2,3]
左右两个索引都为空,
>>>number[:]
[1,2,3,4,5,6,7,8,9,10]
步长:(按照这个步长逐个遍历序列的元素)
>>> number[0:10:2]
[1,2,5,7,9]
>>> number[3:6:3]
[4]
==============================
注意点:
如果步长大于1, 那么就会有些元素被跳过。
步长可以为负数,则分片就会从右往左提取元素
步长不可能等于0,否则就不会执行
序列相加
使用加运算符可以进行序列的连接操作(两种相同类型的序列才能进行连接操作)
>>> [1,2,3] + [4,5,6]
[1,2,3,4,5,6]
乘法操作
数字x乘以一个序列会生成新的序列
>>> 'python' * 5
'pythonpythonpythonpythonpython'
>>> [42] *5
[42,42,42,42,42]
[ ] :空列表可以简单的通过两个中括号进行表示
None :时Python的内建值,表示空
in :检查某个条件是否为真
>>> permission = 'rw'
>>> 'w' in permission
Ture
len :返回序列中所包含元素的数量
min :序列中最小的元素
max:序列中最大的元素
>>>number = [100,34,673]
>>>len(number)
3
>>>max(number)
673
>>>min(number)
34
列
list() :使字符串转换成列表形式
>>> list('Python')
['P','y','t','h','o','n']
列表的元素赋值
>>> x = [1,1,1]
>>> x[1] = 2
>>> x
[1,2,1]
删除元素
>>> name = ['alice' , 'bob' , 'cecil']
>>> del name[2]
>>>name
['alice' , 'bob']
分片赋值
>>> name = list('Alice')
>>> name
['A' , 'l' , 'i' , 'c' , 'e']
>>> name[3:] = list('ar')
>>> name
['A' , 'l' , 'i' ,'a' , 'r']
#可以使用与原序列不等长的序列将分片替换
>>> name = list('Perl')
>>> name[1:] = list('ython')
>>> name
['P','y' , 't' , 'h' , 'o' , 'n']
#不需要替换任何原有的元素的情况**插入新的值**
>>> number = [1,5]
>>> number[1:1] = [2,3,4]
>>> number
[1,2,3,4,5]
列表方法
对象 . 方法(参数)
- append() :在列表末尾追加新的对象
>>> num = [1,2,3]
>>> num.append(4)
>>> num
[1,2,3,4]
2.count() :统计某个元素在列表中出现的次数
>>> ['to ' , 'be' , 'number' , 'one'].count('to')
1
>>> x = [ [1,2],1,1,2,[2,1,[1,2] ] ]
>>>x.count(1)
2
>>> x.count([1,2])
1
extend :在列表的末尾一次性追加另一个序列中的多个值
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> a.extend(b)
>>> a
[1,2,3,4,5,6]
index :从列表中找出某个值第一个匹配项的索引位置
>>> alice = [ 'we' , 'are' , 'from' , 'china']
>>> alice.index('china')
3
insert :将对象插入到列表中
>>> number = [1,2,3,4,5,6,7]
>>> number.insert(3, 'four')
>>> numner
[1,2,3, 'four' , 5,6,7]
pop :移除列表中的一个元素,默认时最后一个,并且返回该元素的值
# pop方法是唯一一个既能修改列表又返回元素值的列表方法
>>> x = [1,2,3,4]
>>> x.pop()
4
>>> x
[1,2,3]
remove :移除列表中某个值的第一个匹配项
>>> x = ['to' , 'be' , 'number' , 'one']
>>> x.remove( 'be' )
>>>x
['to' , 'number' , 'one']
reverse :将列表中的元素反向存放
>>> x = [1,2,3]
>>> x.reverse()
>>> x
[3,2,1]
元组:也是一种序列,但是它不可以更改
>>> 1,2,3
(1,2,3)
>>> (1,2,3)
(1,2,3)
>>> ()
()
>>> 43,
(43.)
tuple() :以一个序列作为参数并把它转换为元组
>>> tuple([ 1,2,3])
(1,2,3)
>>> tuple('abc‘)
(’a' , 'b' , 'c')