学习笔记:python内置类型-序列类-列表

本文详细介绍了Python中的序列,特别是列表的使用,包括创建、增删改查、排序和复制等操作。重点讲解了列表的append、extend、insert、sort、del、copy等方法,以及索引、切片、成员资格等概念。此外,还提到了序列的相加、乘法以及内置函数len、max、min的应用。
摘要由CSDN通过智能技术生成

1、序列

1.1、概述

在python中,最基本的数据结构是序列。序列中每个元素都有编号,即其位置或索引。从左到右,第一个元素的索引为0,第二个元素的索引为1,以此类推。从右到左,第一个元素索引可以标示为-1,第二个为-2,以此类推。
python序列包含列表、元组、字符串等类型。

1.2、序列的通用操作

1.2.1、索引

通过索引访问序列中的单个元素。

>>> s = 'abcde'
>>> 
>>> s[1]
'b'
>>> 
>>> s[0]
'a'
>>> 
>>> s[-1]
'e'
1.2.2、切片

通过切片可以访问序列特定范围内的元素。

格式:sequence_name[index1:index2:步长] 
index1为空时,表示从第一个元素开始,index2为空时,表示到序列最后一个元素,当两个index都是空时,相当于复制整个序列。
切片取值包含左索引index1的元素,不包含右索引index2的元素,也就是左闭右开。
步长默认为1,也可以是其它值,包括负数,但不能是0。步长为正时,index1在index2左边时才能取到值,否则取值为空。步长为负时,则相反。
示例:
>>> s = '123456789'
>>> 
>>> s[2:4]
'34'
>>> 
>>> s[:5]
'12345'
>>> 
>>> s[3:]
'456789'
>>> 
>>> s[:]
'123456789'
>>> 
>>> 
>>> s[::2]
'13579'
>>> 
>>> s[2::2]
'3579'
>>> 
>>> s[1::3]
'258'
>>> 
>>> s[-1:-2]
''
>>> 
>>> s[-1:-1]
''
>>> 
>>> s[4:2]
''
>>> 
>>> s[-5:-1]
'5678'
>>> 
>>> s[::-2]
'97531'
>>> 
>>> s[::-1]
'987654321'
>>> 
>>> s[::0]
Traceback (most recent call last):
  File "<pyshell#249>", line 1, in <module>
    s[::0]
ValueError: slice step cannot be zero
>>> 
>>> s[1:5:-1]
''
>>> 
>>> s[5:1:-1]
'6543'
>>> 
1.2.3、相加

通过加法可以拼接序列。
不同类型的序列不能相加,比如字符串和列表都是序列,但是相加会报错。

>>> 'abc' + 'def'
'abcdef'
>>> 
>>> [1,3,2] + ['abc','ddd']
[1, 3, 2, 'abc', 'ddd']
>>> 
>>>> 'abc' + [1,3,2]
Traceback (most recent call last):
  File "<pyshell#261>", line 1, in <module>
    'abc' + [1,3,2]
TypeError: can only concatenate str (not "list") to str
>>> 
1.2.4、乘法

将序列与x相乘,则重复这个序列x次来创建一个新序列。

>>> 'abc' * 5
'abcabcabcabcabc'
>>> 
>>> (1,2) * 3
(1, 2, 1, 2, 1, 2)
>>> 
>>> ['x',1,'y',3] * 2
['x', 1, 'y', 3, 'x', 1, 'y', 3]
>>> 
1.2.5、成员资格

通过运算符 in 来检查特定值是否在序列中,如果在,则返回True,否则返回False。

>>> p = 'rw'
>>> 
>>> 'r' in p
True
>>> 
>>> 'x' in p
False
>>> 
>>> ss = 'aabedc'
>>> 'aa' in ss
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值