python:列表详解

目录
  • 列表list
    • 1、列表创建
    • 2、列表访问
      • 1)一维列表的访问
      • 2)二维列表的访问
    • 3、修改元素
    • 4、列表切片
    • 5、del命令
    • 6、列表运算
      • 1)列表相加
      • 2)列表相乘
    • 7、列表方法
      • 1) index(value[,start=0[,stop]])
      • 2) count()
      • 3)append()
      • 4)extend()
      • 5)insert()
  • 总结

列表list

1、列表创建

list1 = [3.14, 1.61, 0, -9, 6]
list2 = [‘train', ‘bus', ‘car', ‘ship']
list3 = [‘a',200,‘b',150, ‘c',100]
list4 = [] #创建空列表

在Python中,经常用到列表中的列表,即二维列表

2、列表访问

索引访问方式适用于所有序列类型的对象:列表、元组、字符串。

1)一维列表的访问

vehicle = [‘train', ‘bus', ‘car', ‘ship']
vehicle[0]
‘train'
vehicle[1]
‘bus'
vehicle[2]
‘car'

2)二维列表的访问

对二维列表中的元素进行访问,需要使用两对方括号来表示,第一个表示选择子列表,第二个在选中的子列表中再选择其元素。

computer=[[‘IBM',‘Apple',‘Lenovo'],[‘America',‘America',‘China']]
computer[0][-1]
‘Lenovo'
computer[1][2]
‘China'

3、修改元素

4、列表切片

1.在列表中,可以使用切片操作来选取指定位置上的元素组成新的列表。简单的切片方式为:

原列表名[start : end]

需要提供开始值start和结束值end作为切片的开始和结束索引边界。

开始值start索引位置上的元素是包含在切片内的,结束值end索引位置上的元素则不包括在切片内;

当切片的左索引start为0时可缺省,当右索引end为列表长度时也可缺省。

这个简单的切片操作从原列表中选取索引位于[start, end)区间内的元素组成新的列表。

2.切片操作也可以提供一个非零整数(即可正可负,但不能为0)作为索引值增长的步长step值。使用方式为:

原列表名[start : end : step]

  • 当步长为1时,step参数可以省略。
  • 步长step为1时可以省略,当步长step不为1时,该参数不可省略。
  • 切片操作适用于所有序列类型。

5、del命令

  • 使用del命令可以从列表中删除元素,也可以删除整个列表。
vehicle = [‘train', ‘bus', ‘car', ‘ship']
del vehicle[3]
vehicle #删除了'ship'
[‘train', ‘bus', ‘car']
del vehicle[3] #超出索引范围
Traceback (most recent call last):
File “<pyshell#50>”, line 1, in
del vehicle[3]
IndexError: list assignment index out of range
del vehicle #删除列表vehicle
vehicle #列表vehicle不存在了
Traceback (most recent call last):
File “<pyshell#82>”, line 1, in
vehicle
NameError: name ‘vehicle' is not defined
另外,remove()、pop()、clear()方法均能实现列表元素的删除

6、列表运算

1)列表相加

vehicle1 = [‘train', ‘bus', ‘car', ‘ship']
vehicle2 = [‘subway', ‘bicycle']
vehicle1 + vehicle2
[‘train', ‘bus', ‘car', ‘ship', ‘subway', ‘bicycle']
vehicle1 # vehicle1没有改变
[‘train', ‘bus', ‘car', ‘ship']
vehicle2
[‘subway', ‘bicycle']
vehicle=vehicle1 + vehicle2 # 生成新列表赋值给变量vehicle
vehicle
[‘train', ‘bus', ‘car', ‘ship', ‘subway', ‘bicycle']
vehicle+=[‘bike'] #复合赋值语句
vehicle
[‘train', ‘bus', ‘car', ‘ship', ‘subway', ‘bicycle', ‘bike']

2)列表相乘

vehicle1 = [‘train', ‘bus']
vehicle1*2
[‘train', ‘bus', ‘train', ‘bus']
vehicle1 #原列表保持不变
[‘train', ‘bus']
vehicle=vehicle1*2 #赋值语句
vehicle
[‘train', ‘bus', ‘train', ‘bus']
vehicle*=2 #复合赋值语句
vehicle
[‘train', ‘bus', ‘train', ‘bus', ‘train', ‘bus', ‘train', ‘bus']

7、列表方法

列表中的方法可看作是作用于Python中列表这一特定类型对象的函数。

1) index(value[,start=0[,stop]])

index()方法用于从列表中找出与value值匹配的第一个元素索引位置。

如果没有指定参数start的值,则从索引为0的位置开始查找,否则从索引为strat的位置开始查找。

如果没有指定结束索引位置stop的值,可以查找到列表最后元素,否则在位于[start, stop)内的索引区间查找。

如果找不到匹配项,就会引发异常。

vehicle = [‘train', ‘bus', ‘car', ‘subway', ‘ship', ‘bicycle', ‘car']
vehicle.index(‘car') #整个列表范围内'car'第1次出现的索引位置是2
2
vehicle.index(‘plane') #整个列表范围内没有'plane'
Traceback (most recent call last):
File “<pyshell#81>”, line 1, in
vehicle.index(‘plane')
ValueError: ‘plane' is not in list
vehicle.index(‘plane') #整个列表范围内没有'plane'
Traceback (most recent call last):
File “<pyshell#81>”, line 1, in
vehicle.index(‘plane')
ValueError: ‘plane' is not in list
vehicle.index(‘plane') #整个列表范围内没有'plane'
Traceback (most recent call last):
File “<pyshell#81>”, line 1, in
vehicle.index(‘plane')
ValueError: ‘plane' is not in list

2) count()

count()方法,用于统计某个元素在列表中出现的次数。

vehicle = [‘train', ‘bus', ‘car', ‘subway', ‘ship', ‘bicycle', ‘car']
vehicle.count(‘car')
2
vehicle.count(‘bus')
1
vehicle.count(‘bike')
0

3)append()

append()方法,追加单个元素到列表的尾部,只接受一个元素,元素可以是任何数据类型,被追加的元素在列表中保持着原结构类型。

vehicle = [‘train', ‘bus', ‘car', ‘ship']
vehicle.append (‘plane') #追加一个元素'plane'
vehicle
[‘train', ‘bus', ‘car', ‘ship', ‘plane']
vehicle.append(8) #追加一个元素8
vehicle
[‘train', ‘bus', ‘car', ‘ship', ‘plane', 8]
vehicle.append([8,9]) #追加一个元素[8,9]
vehicle
[‘train', ‘bus', ‘car', ‘ship', ‘plane', 8, [8, 9]]
vehicle.append(10,11) #追加2个元素10和11,出错
Traceback (most recent call last):
File “<pyshell#7>”, line 1, in
vehicle.append(10,11)
TypeError: append() takes exactly one argument (2 given)

4)extend()

列表.extend()方法在列表的末尾追加该方法中参数容器(列表、元组、字符串、字典、集合)中的所有元素。如果参数为字典,则追加字典中的所有键(key)

5)insert()

insert()方法,将一个元素插入到列表中的指定位置。列表的insert方法有两个参数,第一个参数是索引点,即插入的位置,第二个参数是插入的元素。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Python入门基本操作列表排序用法详解

    目录 列表的举例 1.访问python列表中的元素 2.python列表的切片 3.python列表的排序 4.Python列表元素的添加 5.Python列表元素的删除 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现.列表的数据项可以是不同的类型,可以是字符串,可以是数字类型,甚至是列表,元组,只要用","逗号分隔开,就是一个元素. 列表的举例 1.访问python列表中的元素 通过索引直接访问元素,访问单个元素的基本格式为: 列表名[索引值]:访问多个元

  • Python中列表的常用操作详解

    目录 打印出列表的数据 一.列表的循环遍历 1.for循环遍历 2.while循环遍历 二.列表的添加操作 1.append() 2.extend() 3.insert() 三.列表的修改操作 四.列表的查找 1.in 2.not in 3.index 4.count 五.列表中的删除 1.del 2.pop 3.remove 六.列表的排序操作 1.排序sort() 2.reverse方法是将内容顺序反转 总结 列表的格式:变量A的类型为列表 namesList = ['xiaoWang','

  • python列表与列表算法详解(2)

    目录 2. 案例[三酷猫冒泡法排序] 3. 案例[三酷猫二分法查找] 总结 1. 案例[三酷猫列表记账] 操作需求: (1)用列表对象记录三酷猫每天钓鱼的种类和数量 (2)统计三酷猫所钓水产品的总数量和预计收获金额 (3)打印财务报表一张. #三酷猫列表记账 nums = 0 #统计数量变量 amount = 0 #统计金额数量 i = 0 #循环控制变量 fish_record = ['1月1日','鲫鱼',18,10.5,'1月1日','鲤鱼',8,6.2,'1月1日','鲢鱼',7,4.7

  • python 字典和列表嵌套用法详解

    python中字典和列表的使用,在数据处理中应该是最常用的,这两个熟练后基本可以应付大部分场景了.不过网上的基础教程只告诉你列表.字典是什么,如何使用,很少做组合说明. 刚好工作中采集prometheus监控接口并做数据处理的时候,用了很多组合场景,列出几个做一些分享. 列表(List) 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现

  • python处理列表的部分元素的实例详解

    1.处理列表的部分元素称之为切片,创建切片,可指定要使用的第一个元素和最后一个元素的索引. 2.这让Python创建一个始于第一个元素,终止于最后一个元素的切片,即复制整个列表. 实例 names = ['zhang_san','chen_cheng','li_hong','liu_li','chen_yu'] print(names[0:3]) print(names[0:-1]) print(names[:]) print(names[-1]) print(names[-3:]) 负数索引返

  • python切片复制列表的知识点详解

    1.不指定开始和结束的索引[:],这样得到的切片就可以包含整个列表,然后给切片一个新的变量,从而实现复制列表. 2.创建原始列表的副本,两个列表的操作不会影响. 实例 names = ["Jerry", "Tom"] names_copy = names[:] names.append("Ann") names_copy.append("Bob") print(f"names:{names}") print

  • python:列表详解

    目录 列表list 1.列表创建 2.列表访问 1)一维列表的访问 2)二维列表的访问 3.修改元素 4.列表切片 5.del命令 6.列表运算 1)列表相加 2)列表相乘 7.列表方法 1) index(value[,start=0[,stop]]) 2) count() 3)append() 4)extend() 5)insert() 总结 列表list 1.列表创建 list1 = [3.14, 1.61, 0, -9, 6] list2 = ['train', 'bus', 'car',

  • Python基础详解之列表复制

    一.前言 Python中列表的复制分为几种情况: 直接赋值 浅复制 深复制 下面通过实例分析一下这几种情况的区别. 二.直接赋值 a = [11, 22, 33] b = a print(id(a), id(b)) b[0]=1 print(a,b) 输出结果为如下所示,发现内存地址没有发生变化,b只是a的引用,通过b更改列表的值时,a同时做修改. 三.用切片赋值 a = [11, 22, 33] b = a[:] print(id(a), id(b)) b[0]=1 print(a,b) 输出

  • python getopt详解及简单实例

     python getopt详解 函数原型: getopt.getopt(args, shortopts, longopts=[]) 参数解释: args:args为需要解析的参数列表.一般使用sys.argv[1:],这样可以过滤掉第一个参数(ps:第一个参数是脚本的名称,它不应该作为参数进行解析) shortopts:简写参数列表 longopts:长参数列表 返回值: opts:分析出的(option, value)列表对. args:不属于格式信息的剩余命令行参数列表. 源码分析 在An

  • .dcm格式文件软件读取及python处理详解

    要处理一些.DCM格式的焊接缺陷图像,需要读取和显示.dcm格式的图像.通过搜集资料收集到一些医学影像,并通过pydicom模块查看.dcm格式文件. 若要查看dcm格式文件,可下Echo viewer 进行查看. 若用过pycharm进行处理,可选用如下的代码: # -*-coding:utf-8-*- import cv2 import numpy import dicom from matplotlib import pyplot as plt dcm = dicom.read_file(

  • python 伯努利分布详解

    伯努利分布 是一种离散分布,有两种可能的结果.1表示成功,出现的概率为p(其中0<p<1).0表示失败,出现的概率为q=1-p.这种分布在人工智能里很有用,比如你问机器今天某飞机是否起飞了,它的回复就是Yes或No,非常明确,这个分布在分类算法里使用比较多,因此在这里先学习 一下. 概率分布有两种类型:离散(discrete)概率分布和连续(continuous)概率分布. 离散概率分布也称为概率质量函数(probability mass function).离散概率分布的例子有伯努利分布(B

  • Python基础详解之邮件处理

    一.发送电子邮件 Python标准库提供了smtplib,用于实现SMTP协议发送邮件.标准库还提供email模块帮助我们构建邮件格式.SMTP(Simple Mail Transfer Protocol,即简单邮件传输协议),是一组有源地址到目的地址传送邮件的规则,用来控制信件的中转方式. 获取QQ邮箱密码(授权码) 二.发送纯文本格式的邮件 import smtplib from email.mime.text import MIMEText from email.header import

  • Python语法详解之decorator装饰器

    python 是一门优雅的语言,有些使用方法就像魔法一样.装饰器(decorator)就是一种化腐朽性为神奇的技巧.最近一直都在使用 Tornado 框架,一直还是念念不忘 Flask .Flask 是我最喜欢的 Python 框架,最早被它吸引也是源自它使用装饰器这个语法糖(Syntactic sugar)来做 Router,让代码看上去就感觉甜甜的. Tornado 中的 Router 略显平淡,怀念 Flask 的味道,于是很好奇的想知道 Flask 是如何使用这个魔法.通过阅读 Flas

  • Python实例详解递归算法

    递归是一种较为抽象的数学逻辑,可以简单的理解为「程序调用自身的算法」. 维基百科对递归的解释是: 递归(英语:Recursion),又译为递回,在数学与计算机科学中,是指在函数的定义中使用函数自身的方法.递归一词还较常用于描述以自相似方法重复事物的过程. 例如,当两面镜子相互之间近似平行时,镜中嵌套的图像是以无限递归的形式出现的.也可以理解为自我复制的过程. "递"是传递的意思,"归"是归还的意思,先把一个方法一层层传递下去,然后传递到最后一层再把结果归还回来. 比

  • Python知识点详解之正则表达式语法

    目录 Python 正则表达式是什么 怎么用 正则表达式语法 re 库基本用法 re.search 函数 re.match 函数 re.findall 函数 re.split 函数 re.finditer 函数 re.sub 函数 re 库其它函数 扩展知识 总结 Python 正则表达式是什么 学习 Python 正则表达式离不开 re 模块,所以本篇博客会配合 re 模块进行编写. re 库是 Python 中处理正则表达式的标准库,本篇博客介绍 re 库的同时,会简单介绍一下正则表达式语法

  • Java可变参数列表详解

    Java可变参数列表详解 1.接受的传入参数情况: 如public void test(String ...args){...} 1)不使用参数,如test() 2)使用一个或多个参数,如test("1"); test("1","2"); 3)使用数组 test(new String[]{"1","2"}); 2.方法内部访问参数: 在test方法内部,我们可以像使用数组的访问方式一样来访问参数args.如

随机推荐