Python之列表基础

本文介绍了Python中序列的基本概念和分类,重点讲解了列表的定义、使用、切片、通用操作、修改、添加、删除及翻转等操作。通过实例展示了如何创建、查找、修改和操作列表元素,适合Python初学者学习。
摘要由CSDN通过智能技术生成

**

列表基础

**

一、序列

(一)基本概念

  • 序列是Python中最基本的一种数据结构

  • 序列用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置即索引)并且序列中的数据会按照添加的顺序来分配索引。

  • 数据结构指计算机中数据存储的方式。

    • 例如:有一个字符串为‘abcd’,在计算机存储时,字符串是以序列的方式进行存储的。除了有特定的id、类型type以及值value之外;这个字符串里面的每个字母都有对应的索引值。
      • 如下图所示,字符串‘abcd’,其中每个字母分别对应一个索引值,如果是从左往右(正序),abcd分别对应0、1、2、3的索引值。若从右往左(逆序),abcd则分别对应-1、-2、-3、-4这些索引值,也就是有一个位置。

在这里插入图片描述

也就是说,字符串是以一定顺序的序列进行存储的,并有固定的索引值,这就是字符串可以通过索引值来截取的原因。

(二)序列的分类

  • 可变序列(序列中的元素可以改变):例如 列表(list)
  • 不可变序列(序列中的元素不能改变):例如 字符串(str)和元组(tuple)
  • 例如·:以下列表1,这个列表的每个元素都可以进行增删改查的操作。(下面会说到这些基本操作)
    -list1=[1,2,3,4,5,[a,b]]
而对于字符串来说,里面的元素不能进行增加或者删除这些操作,除非是通过字符串的截取方式来重新获取一个变量。

二、 列表

(一)列表概念

  • 列表是Python中的一个对象(在Python中万物皆对象)
  • 列表的作用
    • 列表中可以保存多个有序的数据
    • 列表是用来存储对象的对象(通俗理解为:大屋子里面装着另一个小屋子)

(二)列表的使用

1. 列表的创建
(1)使用中括号[ ]:lst1 = [1,2,3,4]
(2)使用 list() 这个函数:
list(range(5)) >>>>输出结果:[0, 1, 2, 3, 4]

需要注意的是,使用list( ) 函数时,创建数字列表时,得使用range()等函数一起使用,不能在括号里面直接输入数字,否则会报错。 不过用 list()创建字符串时,是可以直接在括号里面输入字符串即可创建。

2. 列表的切片

  • (1)切片的原理:切片是指从现有列表中获得一个子列表
即切片切出来的是一个列表,而不是元素。
  • (2)切片语法[开始位置 : 结束位置 : 步长]
    • ①通过切片获取元素时,会包括起始位置的元素,不会包括结束位置的元素。(即左闭右开,可以取开头、不可取结尾)
    • 起始位置和结束位置的索引可以不写
      • 如果省略结束位置,则会从当前的开始位置一直截取到最后。
      • 如果省略开始位置,则会从第一个元素截取到结束的元素,但是不包括结束的元素。
      • 如果开始位置和结束位置都省略,则会从第一个元素开始截取到最后一个元素。
    • 步长指元素之间的间距,当省略不写时,默认为1。
      • 步长绝对值最小值是为1,不能为0
      • 它的正负代表的是方向,即正的代表从左到右进行切片,负的则代表从右到左进行切片。
        下面是切片的例子:
        在这里插入图片描述

(三)列表的通用操作

1. 加号+ 和 乘号*

  • 加号+ 可以将两个列表拼接成一个列表
lst1 = ["a"]
lst2 = [1,2,3,4]
lst3 = lst1+lst2
print(lst3)
>>>>输出结果:['a', 1, 2, 3, 4]
  • 乘号* 可以将列表重复指定的次数 (注意2个列表不能够做乘法,要和整数做乘法运算)。
lst5=['a','b','李华']*3
print(lst5)
>>>>>输出结果:
>['a', 'b', '李华', 'a', 'b', '李华', 'a', 'b', '李华']

2. in 和 not in

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

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

  • 返回结果是True或False这两个布尔值中的一个

lst6 = ['小爱同学','小米','a','x']
'x' in lst6
>>>输出结果:True

'a' not 
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值