06. Python语言的核心编程 · 第六章 Python的列表基础操作汇总

1. 序列(sequence)

1.1 基本概念

  序列是 Python语言 中最基本的一种数据结构数据结构是指计算机中数据存储的方式,序列用于 保存一组有序的数据 。所有的数据在序列当中都有一个 唯一的位置(索引) ,并且序列中的数据会按照添加的顺序分配索引
  Python语言 有6个序列内置类型,但最常见的是 列表元组
  序列 都可以进行的操作包括 索引切片检查成员
  此外,Python语言 已经内置确定序列的长度以及确定最大最小的元素方法

1.2 序列的分类

  可变序列(序列中的元素可以改变):例如 列表(list)、字典(dict) …
  不可变序列(序列中的元素不能改变):例如 字符串(str)、元组(tuple)…
  

2. 列表(list)

  列表 是最常用的 Python语言 的数据类型,它可以作为一个方括号内的逗号分隔出现。
  列表 的数据项 不需要 具有相同的类型
  列表 是 Python语言 中的一个 对象
  列表的作用:
   1)列表中可以保存多个有序的数据
   2)列表是用来存储 对象对象

2.1 列表的使用

  列表的创建
    通过 xxx = [ ] 来创建一个空列表。

  参考案例:

list1 = ['Google', 'Runoob', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];

2.2 切片(实操、面试 必备的基础技能)

  切片是指从现有列表中获得一个子列表。
  通过切片来获取指定的元素。

  语法: 列表名[起始索引 :结束索引 :步长]

  Python的列表截取切片与字符串操作类型,如下所示:

L=['Google', 'Runoob', 'Taobao']

  Python的列表操作:
在这里插入图片描述
  具体代码:

>>>L=['Google', 'Runoob', 'Taobao']
>>> L[2]
'Taobao'
>>> L[-2]
'Runoob'
>>> L[1:]
['Runoob', 'Taobao']
>>>

  列表还支持拼接操作:

>>>squares = [1, 4, 9, 16, 25]
>>> squares += [36, 49, 64, 81, 100]
>>> squares
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

  我们看一个稍微复杂点的参考案例:

hero = ['蜘蛛侠','钢铁侠','绿巨人','黑寡妇','美国队长','蚁人']
# 做切片操作时,每次获取的都是初始列表,不是切过后的列表,不会影响原始列表

# 起始位置和结束位置的索引可以不写
print(hero)
# ['蜘蛛侠', '钢铁侠', '绿巨人', '黑寡妇', '美国队长', '蚁人']

# 切片时指定起始位置和结束位置的索引后获取的结果
print(hero[1:3])
# ['钢铁侠', '绿巨人']

# 如果省略结束位置,则会从当前位置开始一直截取到最后;
print(hero[1:])
# ['钢铁侠', '绿巨人', '黑寡妇', '美国队长', '蚁人']

# 如果省略开始位置,则会从第一个元素开始截取到结束位置的元素,但不包含结束位置的元素;
print(hero[:3])
# ['蜘蛛侠', '钢铁侠', '绿巨人']

# 如果省略开始和结束的位置,则会从第一个元素截取到最后一个元素
print(hero[:])
# ['蜘蛛侠', '钢铁侠', '绿巨人', '黑寡妇', '美国队长', '蚁人']

# 步长:表示每次获取元素的间隔  默认为1  可以省略
print(hero[::2])
# ['蜘蛛侠', '绿巨人', '美国队长']

# 步长不能为 0  
print(hero[::0])
# ValueError: slice step cannot be zero

# 步长可以为负数,
print(hero[::-1])
# ['蚁人', '美国队长', '黑寡妇', '绿巨人', '钢铁侠', '蜘蛛侠']

  通过切片获取元素时,会包括起始位置的元素不会包括结束位置的元素
  起始位置结束位置 的索引可以不写;
  如果省略结束位置,则会 从当前的位置开始 一直截取到最后
  如果省略开始位置,则会从第一个元素截取到结束的元素,但是不包括结束的元素
  如果开始位置结束位置都省略, 则会从第一个元素开始截取到最后一个元素。
  步长 表示每次获取元素的间隔,默认是1(可以省略不写);
  步长 不能是0,但可以是是 负数(从后向前的获取列表中的元素)
  

3. 通用操作

  +  和  *
  +  可以将 两个列表 拼接成 一个列表
  *   可以将 列表内的元素重复指定的次数 (注意:2个列表不能够做乘法,要和整数做乘法运算。)

# + 表示  可以将两个列表拼接成一个列表
lst = [1,2,3] + [4,5,6]
print(lst)
# [1, 2, 3, 4, 5, 6]

# * 表示将列表中的元素指定重复次数
lst = [1,2,3] * 2
print(lst)
# [1, 2, 3, 1, 2, 3]

# 列表和列表不能相乘   
lst = [1,2,3] * [4,5,6]
print(lst)
# TypeError: can't multiply sequence by non-int of type 'list'

  in  和  not in
  in   用来检查指定元素是否在列表当中
  not in  用来检查指定元素是否不在列表当中

hero 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值