Python学习笔记:列表(list)基本内容

1.

Python中的列表包容性很强,列表中可以使相同的元素也可是不同的元素。

表示形式为用  []   来包含元素。

>>> L1 = [1,2,3]
>>> L2 = ['a','b','c']
>>> L3 = [1,'b',3]
>>> L1
[1, 2, 3]
>>> L2
['a', 'b', 'c']
>>> L3
[1, 'b', 3]


并且列表元素可以修改

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[1] = 5
>>> L
[1, 5, 3, 'a', 'b', 'c']

注意:(1)如果列表的元素为字符时,需要加上引号等。

    (2)如果不加引号则会报错,提示为定义!


2.

Python中的列表的索引值也从0开始!(与C/C++数组相似)

但是,python支持从右往左的索引值,最右边的值为-1.

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[0]
1
>>> L[3]
'a'
>>> L[-1]
'c'
>>> L[-3]
'a

同样也可以进行修改

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[-2] = 5
>>> L
[1, 2, 3, 'a', 5, 'c']


3.

Python中的列表可以进行切片处理。

例:L[1:3]  则会提取L列表中相应的元素,从位置1开始到3但不包含3!


例:L[1:3:1]  如果有第三个参数(称为步进值),若步进值>0,则从左到右进行操作,也就是本例子中的从位置1到位置3不包含3,

每隔1个元素进行提取操作,若步进值为2,则每隔2个元素进行提取操作。依此论推

例:L[4:1:-1]  如果步进值<0,则从右到左进行操作,本例中从位置4到位置1不包含位置1,

每隔1个元素进行提取操作,若步进值为-2,则每隔2个元素进行提取操作。依此论推


注意:若不存在第三个参数默认从左至右进行,并每隔一个元素进行提取一次!


>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[0]
1
>>> L[3]
'a'
>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[1:3]
[2, 3]
>>> L[1:3:1]
[2, 3]
>>> L[1:3:2]
[2]
>>> L[4:1:-1]
['b', 'a', 3]
>>> L[4:1:-2]
['b', 3]


提取的数值课进行赋值或者输出。

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L1 = L[1:3]
>>> L1
[2, 3]
>>> L3 = L[1:4:2]
>>> L3
[2, 'a']
>>> L4 = L[4:1:-2]
>>> L4
['b', 3]



注意:若切片时未标明开始位置和结束位置时默认位置时最初或者最后。

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[:]
[1, 2, 3, 'a', 'b', 'c']
>>> L[1:]
[2, 3, 'a', 'b', 'c']
>>> L[:3]
[1, 2, 3]



若从左至右切片时,开始位置应小于结束位置。否则提取值数据为空。

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[1:1]
[]
>>> L[3:1]
[]
>>> L[1:3]
[2, 3]


若从右至左切片时,开始位置应大于结束位置。否则提取值数据为空。

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L[1:1:-1]
[]
>>> L[1:3:-1]
[]
>>> L[3:1:-1]
['a', 3]



也可以运用切片的操作来对列表进行插入和更换元素


插入:

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L1 = [9,8,7]
>>> L1
[9, 8, 7]
>>> L[2:2] = L1
>>> L
[1, 2, 9, 8, 7, 3, 'a', 'b', 'c']


注意:插入位置貌似只与开始位置有关(本人测试结束位置无论小于或者大于开始位置,都是在开始位置插入的内容)!

>>> L = [1,2,3,'a','b','c']
>>> L1 = [9,8,7]
>>> L[3:1] = L1
>>> L
[1, 2, 3, 9, 8, 7, 'a', 'b', 'c']



更换:

这是将开始位置以后的元素全部更换!

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L1 = [9,8,7]
>>> L1
[9, 8, 7]
>>> L[3:] = L1
>>> L
[1, 2, 3, 9, 8, 7]
>>> L2 = ['a','b']
>>> L[1:] = L2
>>> L
[1, 'a', 'b']


也可以只将部分元素更换

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L1 = [9,8,7]
>>> L1
[9, 8, 7]
>>> L[1:4] = L1
>>> L
[1, 9, 8, 7, 'b', 'c']


注意:这里貌似跟插入一样只跟开始位置有关(测试时,如果只想把L的1到4之间3个元素更换,但所更换的内容L1有四个元素,那么会将L的位置1以后的四个内容

都进行更换!!!)

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L1 = [9,8,7,6]
>>> L1
[9, 8, 7, 6]
>>> L[1:4] = L1
>>> L
[1, 9, 8, 7, 6, 'b', 'c']



例子:字符反转!

>>> L = [1,2,3,'a','b','c']
>>> L
[1, 2, 3, 'a', 'b', 'c']
>>> L = L[::-1]
>>> L
['c', 'b', 'a', 3, 2, 1]


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值