python中list的运算_详解Python列表及其运算

本篇介绍Python中的列表数据类型,文中会讨论列表的声明、赋值及其相关运算。通过本篇的学习,可以达成如下目标。

● 掌握列表的声明和赋值

● 掌握列表元素的添加、更新、删除、遍历操作

● 掌握列表的排序及比较操作

Python列表是线性表的一种表示方式。一个列表是n个数据元素的有限序列(a1,a2,…,an)。元素之间是相邻关系,即第i-1个元素领先于第i个元素,第i个元素领先于第i+1个元素。可以将第i-1个元素称为第i个元素的直接前驱元素,第i+1个元素称为第i个元素的直接后继元素。表中元素的个数为表的长度,长度为0的表称为空表。

Python列表中所存储元素的具体含义,在不同的情况下可以不同,它可以是一个数,也可以是字符串,甚至是更复杂的信息。它可以存储Python的标准类型,也可以存储自定义的数据结构及对象。Python对列表也提供了非常便捷的操作,列表可以执行pop、sort、append、remove等操作,也可以合并其它列表,或者将列表切片(切分出子列表)。

1、声明列表数据并赋值

在Python语言中,声明一个列表并赋值非常简单。列表元素用方括号[]括起来,元素之间用英文逗号分隔。不同于其它编程语言,列表可以包含任意类型的元素,可以在同一个列表中存储字符串、浮点类型、对象、复数类型等数据。

例1:声明列表数据并赋值的例子

u=1724839872,3425083302&fm=173&app=25&f=JPEG?w=640&h=181&s=47C2F81A4F665D2244756CDA000050B2

列表中可以嵌套列表,可以多层嵌套,构建二维、三维等多维列表。如例1中的score列表,就内嵌了学生的成绩列表。

2、 访问列表数据

在Python语言中访问列表数据,可以直接使用下标索引访问列表中的单个数据项,也可以使用截取运算符访问子列表。

访问运算符包括“[]”和“[:]”运算符,用于访问列表中的单个数据项,或者一个子列表。

访问列表单个数据项可以使用“[]”运算符,访问语法如下:

list[index]

list是列表的变量名称,index是想要访问的列表下标索引,下标范围从0到列表长度减1。

例2:访问列表单个数据项

u=3170641495,4019056620&fm=173&app=25&f=JPEG?w=640&h=234&s=06F63C9A1774442208F005DA000010B2

在Python语言中,print不能直接输出浮点、整数等数值类型。用print输出数值类型时,需要使用格式化运算符。当访问嵌套列表元素时,需要使用多个下标进行访问。

例2输出结果如下图所示。

u=1536579899,686750948&fm=173&app=25&f=JPEG?w=573&h=209&s=959868337ACAD52C6A5534DB0000D0B1

访问列表中的子表可以用“[:]”运算符,“[:]”运算符语法如下:

list[start:end]

list是列表的变量名称,start是起始索引,end是终止索引,该运算符访问包括start在内到end(不包括end)的范围内的列表元素,返回值仍是一个列表。

例3:访问列表中的子列表

u=2166345652,2662820105&fm=173&app=25&f=JPEG?w=638&h=191&s=4242FC1287664D22464504DA000010B2

例3输出结果如下图所示。

u=2622152333,1512512796&fm=173&app=25&f=JPEG?w=558&h=241&s=8D98EC133BC9F12C4A7514DB0200C0B1

3、列表元素的更新

更新列表元素可以采用访问列表元素的方法,在赋值运算符(=)左边使用访问运算符可以更新单个数据项或多个数据项,也可以用append方法顺序添加新的元素到列表,也可以使用insert方法在指定的位置插入一个元素到列表。

使用赋值语句更新列表元素

使用赋值语句和访问运算符可以对指定的单个列表元素或多个列表元素更新。

例4:使用赋值语句更新列表元素的例子

u=3143359542,502124507&fm=173&app=25&f=JPEG?w=640&h=233&s=47CAFC1A0BA449220EC56DDA0000C0B2

例4输出结果如下图所示。

u=4290080722,1836117726&fm=173&app=25&f=JPEG?w=559&h=238&s=9598EC3359E8780D067DC4DB000080B1

使用append方法添加列表元素

列表需要动态添加元素时,可以使用列表的append方法添加一个新的元素到列表的尾部。

例5:使用append方法添加元素

u=2648376587,134867108&fm=173&app=25&f=JPEG?w=639&h=245&s=42C2FC1A17405D604E5520DA000010B2

4、列表元素的删除

删除指定位置或范围的列表元素可以使用del方法,del方法也可以删除整个列表。如需要删除匹配元素内容的数据项,可以使用列表的remove方法,也可以使用pop方法移除列表中的一个元素。

使用del方法删除列表元素或列表(本身)

del方法不仅能删除单个或多个列表元素,也可以删除整个列表。一般来说,编写程序时不需要删除整个列表,因为当列表出了作用域(例如,程序结束,函数调用完成等),Python会自动删除该列表。

del删除列表元素的语法为:

del dataList[i] 或 del dataList[start:end]

其中,del为方法,dataList为列表变量名称,i为待删除列表元素的索引。start是起始索引,end是终止索引。

del删除列表的语法为:

del dataList

其中,del为方法,dataList为列表变量名称。

例6:使用del方法删除列表元素及列表的例子

u=1346497150,2870155910&fm=173&app=25&f=JPEG?w=639&h=266&s=62C7FC1A07025D624C5520DA000050B2

例6输出结果如下图所示。

u=3889159815,372477718&fm=173&app=25&f=JPEG?w=560&h=240&s=DD82AD1B31F8FC2D024590DA0000C0B1

从输出结果可以看出,用del方法删除student列表后,再执行print方法输出student列表时,程序会报错。

使用remove方法删除列表元素

remove方法是列表提供的内置方法,使用remove方法可以删除列表中与指定内容相匹配的第一项元素。

remove删除列表元素的语法为:

dataList.remove(obj)

其中,dataList为列表变量名称,remove为列表方法,参数obj为指定的内容(如字符串、数值等对象)。

例7:使用remove方法删除列表元素的例子

u=2233585305,3275578864&fm=173&app=25&f=JPEG?w=640&h=233&s=46C2FC1A1B605D200AF92DDA000050B2

例7输出结果如下图所示。

u=1247235128,656616714&fm=173&app=25&f=JPEG?w=564&h=228&s=9990EC1315B8F825287510DB020050B1

使用pop方法移除列表元素

pop方法是列表提供的内置删除方法,使用方式和del方式相同,不同的是pop在删除元素的同时,会返回该元素的值。

例8:使用pop方法删除列表元素的例子

u=522925239,887975998&fm=173&app=25&f=JPEG?w=639&h=104

例8输出结果如下图所示。

u=3631101883,56960371&fm=173&app=25&f=JPEG?w=559&h=190&s=81385D320D6869205AF584DA0000C0B2

5、 列表的排序和比较

在实际应用中,经常需要对列表进行排序。Python提供了列表的内置函数sort方法和通用函数sorted方法对列表进行排序。

使用列表内置的sort方法进行排序

列表的内置方法sort用于对列表进行排序,排序完成后,列表内的元素顺序被改变。其默认排序规则是,如果列表中的元素都是数字,按照从小到大升序排序;如果元素都是字符串,则会按照字符表顺序升序排序。sort方法语法如下:

list.sort(key=None, reverse=False)

其中,key为可选函数参数,该函数主要用来指定进行比较的元素,元素取自于待排序列表中的前两个元素,函数只能返回一个元素。reverse是一个布尔值,如果设置为True,列表元素将被倒序排列,默认为False。

例9:使用sort方法进行列表排序

u=2197388418,1251070556&fm=173&app=25&f=JPEG?w=640&h=164&s=6EC2FC1A4F624D2244782CDA000080B2

例9输出结果如下图所示。

u=416675649,2929950477&fm=173&app=25&f=JPEG?w=560&h=207&s=8570CD3215787D220EFDC4DA020080B1

使用通用函数sorted方法进行排序

sorted方法是Python语言提供的适用于可迭代数据类型的排序方法。使用方法和list的sort方法相同,唯一不同的是sorted方法不改变原列表元素的顺序,而是返回一个排序后的列表。

例10:使用sorted方法进行列表排序

u=1179678338,2901073765&fm=173&app=25&f=JPEG?w=640&h=171&s=6FC2FC1A4F664D22487824DA0000D0B2

例10输出结果如下图所示。

u=3852098188,1416307548&fm=173&app=25&f=JPEG?w=562&h=193&s=8350CD320130682204FDC0DA020010B2

求列表的最大值和最小值

Python语言也提供了对可迭代数据类型求最大值和最小值的方法,求最大值的方法为max,求最小值的方法为min。

例11:求列表的最大值和最小值的例子

u=2755685467,88740400&fm=173&app=25&f=JPEG?w=640&h=111&s=62FF399AC5664D2052716CD90000D0B2

例11输出结果如下图所示。

u=2293802658,2376329329&fm=173&app=25&f=JPEG?w=564&h=191&s=9198EC3345C8FF24287514DB0000C0B1

6、 遍历列表元素

在Pyhton语言中,遍历列表一般使用for循环语句,根据取值方式的不同,又分为三种遍历方式。

例12:列表元素的三种遍历方式

u=4050471188,3871324220&fm=173&app=25&f=JPEG?w=640&h=172&s=726FB81ACF664D2206E419DA000080B0

例12输出结果如下图所示。

u=830870596,2299094200&fm=173&app=25&f=JPEG?w=575&h=340&s=C79A7C2315787C2D18DDA1DA0000D0B1

7、 列表的成员关系操作

在列表操作中,成员操作符“in”和“not in”用于判断一个对象的值是否出现或不出现在列表中,出现返回True,否则返回False。

例13:成员关系操作例子

u=2116836429,202380494&fm=173&app=25&f=JPEG?w=640&h=128&s=46DF789A4F624D2000F008DA000090B2

课程小结

在Python语言中,声明一个列表并赋值非常简单。列表元素用方括号[]括起来,元素之间用英文逗号分隔。访问列表元素可以使用“[]”和“[:]”访问运算符,用于访问列表中的单个数据项,或者一个子列表。删除指定位置或范围的列表元素可以使用del方法,del方法也可以删除整个列表。如需要删除匹配元素内容的数据项,可以使用列表的remove方法,也可以使用pop方法移除列表中的一个元素。

在实际应用中,经常需要对列表进行排序。Python提供了列表的内置函数sort方法和通用函数sorted方法对列表进行排序。默认排序规则是,如果列表中的元素都是数字,按照从小到大升序排序;如果元素都是字符串,则会按照字符表顺序升序排序。

遍历列表元素主要有三种方式,都是采用for循环语句,主要方法是元素迭代、指定索引范围、枚举。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值