Python列表list的详细用法介绍

目录
  • 一. 创建列表
    • 1.1 第一种
    • 1.2 第二种
  • 二. 查询列表
    • 2.1 获取列表元素索引
    • 2.2 获取列表单个元素
    • 2.3 获取列表多个元素
    • 2.3 判断元素是否存在于列表
  • 三. 列表添加操作
  • 四. 列表删除操作
  • 五. 修改列表元素
  • 六. 列表排序操作

一. 创建列表

列表(list)作为Python中基本的数据结构,是存储数据的容器,相当于其它语言中所说的数组。

模拟出的结构如下:

创建列表有两种方式:

1.1 第一种

使用“[ ]”进行创建,内部元素可以是任意数据类型:

list1=["Hello","world",True,0.01,12]

1.2 第二种

使用Python中内置函数list()

list2=list(["Hello","world",True,0.01,12])

列表的特点总结: 

列表元素是按照有序顺序进行排序的每个索引对应一个数据列表数据可以重复存储内部元素可以是任意数据类型根据内部元素多少动态分配内存空间

二. 查询列表

2.1 获取列表元素索引

使用index()函数获取元素索引,若列表中有重复元素,只获取第一个位置的索引,元素不存在会抛出错误。

list1 = ["Hello","Hello",True,0.01,12]
# 索引为 0
print(list1.index("Hello"))
# 索引为 4
print(list1.index(12))
# 索引不存在 ValueError: 100 is not in list
print(list1.index(100))

给index()函数设置参数,可以在指定的范围内查找元素的索引位置

list1 = ["Hello", "Hello", True, 0.01, 12]
# 从索引1开始到索引4结束,不包括索引4,查找元素True的索引为2
print(list1.index(True, 1, 4))

2.2 获取列表单个元素

对于一个列表,索引从前往后下标是从0~N-1,从后往前是-N~-1,N表示元素个数。

list1 = ["Hello", "Hello", True, 0.01, 12]
# 获取索引为2的元素 True
print(list1[2])
# 获取索引为-1的元素 12
print(list1[-1])
# IndexError: list index out of range
print(list1[5])

2.3 获取列表多个元素

使用索引只能获取一个元素,想要获取列表中多个元素使用切片。

公式:列表名[start : stop :step],意思是从哪里开始到哪里结束,可以定义步长(默认步长为1,step不能为0)。

对于切片的结果就是对原列表的拷贝生成一个新的列表对象。

切片的用法如下:

list1 = ["Hello", "Hello", True, 0.01, 12, 32, 34]

# 取索引1~6,默认步长为1:['Hello', True, 0.01, 12, 32]
print(list1[1:6:])
# 取索引1~6,['Hello', True, 0.01, 12, 32]
print(list1[1:6:1])
# 取索引1~6,步长为2:['Hello', 0.01, 32]
print(list1[1:6:2])
# start不写,默认从0开始:['Hello', True, 12]
print(list1[:6:2])
# ['Hello', True, 12]
print(list1[0:6:2])
# stop不写,
print(list1[0::2])
# step为负数 -1 [34, 32, 12, 0.01, True, 'Hello', 'Hello']
print(list1[::-1])
# [34, 12, True, 'Hello']
print(list1[::-2])
# [32, 12, 0.01, True, 'Hello', 'Hello']
print(list1[5::-1])
# [32, 12, 0.01, True]
print(list1[5:1:-1])

注意:若step为负数则是从后往前开始截取切片。

2.3 判断元素是否存在于列表

使用in或者not in,输出的是布尔类型的值。

list1 = ["Hello", "Hello", True, 0.01, 12, 32, 34]

# True
print("Hello" in list1)
# False
print("Hello" not in list1)
# False
print(True not in list1)
# True
print(12 in list1)

遍历列表元素:

list1 = ["Hello", "Hello", True, 0.01, 12, 32, 34]
for i in list1:
    print(i)

三. 列表添加操作

list1=[10,20,30,40,50,60]
# 在列表末尾添加一个元素
list1.append(34)
# [10, 20, 30, 40, 50, 60, 34]
print(list1)
# 在列表末尾添加多个元素
list1.extend([21,12,34])
# [10, 20, 30, 40, 50, 60, 34, 21, 12, 34]
print(list1)
# 在列表任意位置添加一个元素
list1.insert(0,1)
# [1, 10, 20, 30, 40, 50, 60, 34, 21, 12, 34]
print(list1)
# 在列表任意位置添加多个元素,会删除切片的元素,然后添加新元素
list2=["hello",3,40]
list1[5:8:]=list2
# [1, 10, 20, 30, 40, 'hello', 3, 40, 21, 12, 34]
print(list1)

四. 列表删除操作

list1 = [10, 20, 30, 40, 50, 60, 70]
list1.remove(20)
# [10, 30, 40, 50, 60, 70]
print(list1)
# 删除索引为1的元素,不指定删除最后一个元素
list1.pop(1)
# [10, 40, 50, 60, 70]
print(list1)
# 切片删除
list1[1:3] = []
# [10, 60, 70]
print(list1)

五. 修改列表元素

为指定的索引修改元素值,也可以使用切片的方式修改。

list1 = [10, 20, 30, 40, 50, 60, 70]
list1[3]="Hello"
# [10, 20, 30, 'Hello', 50, 60, 70]
print(list1)
# 切片方式
list1[3:6]=[1,1,1,1]
# [10, 20, 30, 1, 1, 1, 1, 70]
print(list1)

六. 列表排序操作

有常见的两种方式可以对列表中的元素进行排序,使用sort(),或者sorted()的方式进行排序。

两者区别就是前者排序后不会生成新的列表对象,而后者会生成一个新的列表对象。

list1 = [10, 30, 20, 40, 80, 60]
# 原来list1: 1738929360704
print("原来list1:", id(list1))
# [10, 20, 30, 40, 60, 80] 默认升序
list1.sort()
print(list1)
# 后来list1: 1738929360704
print("后来list1:", id(list1))
# 指定reverse=True为降序
list1.sort(reverse=True)
# [80, 60, 40, 30, 20, 10]
print(list1)
###################################
list2 = [10, 30, 67, 100, 80, 32]
# 原来list2:  2357934175872
print("原来list2: ", id(list2))
list2 = sorted(list2)
# # [10, 30, 32, 67, 80, 100]
print(list2)
# 后来list2:  2357931224384
print("后来list2: ", id(list2))
# 降序
list2 = sorted(list2, reverse=True)
# [100, 80, 67, 32, 30, 10]
print(list2)

此外,还可以使用循环生成列表,称为列表生成式。

主要结构:

[ i*i for i in range(a,b) ]

通过一个for循环生成列表,i*i指的是计算公式。

代码操作:

# 生成1-9的列表式子,并通过i+i计算
list1 = [i + i for i in range(1, 10)]
# [2, 4, 6, 8, 10, 12, 14, 16, 18]
print(list1)

以上就是对于Python列表的简单操作。

到此这篇关于Python列表list的详细用法介绍的文章就介绍到这了,更多相关Python列表list内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python list列表查找元素详情

    目录 Python list列表 index() 方法 count()方法 Python list列表 Python 列表(list)提供了 index() 和 count() 方法,它们都可以用来查找元素. index() 方法 index() 方法用来查找某个元素在列表中出现的位置(也就是索引),如果该元素不存在,则会导致 ValueError 错误,所以在查找之前最好使用 count() 方法判断一下. index() 的语法格式为: listname.index(obj, start,

  • Python list列表删除元素的4种方法

    目录 del:根据索引值删除元素 pop():根据索引值删除元素 remove():根据元素值进行删除 clear():删除列表所有元素 在 Python 列表中删除元素主要分为以下 3 种场景: 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法: 根据元素本身的值进行删除,可使用列表(list类型)提供的 remove() 方法: 将列表中所有元素全部删除,可使用列表(list类型)提供的 clear() 方法. del:根据索引值删除元素 del 是 Pyt

  • 利用Python将list列表写入文件并读取的方法汇总

    目录 1.writelines()直接写入 2.str转化为字符串写入 3.for循环写入 4.使用.join函数修改列表 读取数据 附:还有写csv文件和excel文件的方式 总结 1.writelines()直接写入 l=["A","B","C","D"] f=open("k.txt","w") f.writelines(l) f.close() 该方法写入直接写入列表元素 2.st

  • Python中列表(List) 的三种遍历(序号和值)方法小结

    目录 列表(List) 的三种遍历(序号和值)方法 Python遍历整个列表 1.深入地研究循环 2.在for循环中执行更多的操作 3.在for循环结束后执行一些操作 列表(List) 的三种遍历(序号和值)方法 if __name__ == '__main__': list = ['html', 'js', 'css', 'python'] for i in list: print(list.index(i), i) # 方法1 print( '遍历列表方法1:') for i in list

  • python中列表(list)和元组(tuple)的深入讲解

    前言 在我们实际开发中,经常需要将一组数据存储起来,以便使用.如果学习了其他的语言可能知道数组(Array)这个数据结构,它就可以将多个数据进行存储,访问数据可以通过数组下标的方式,的进行获取.如果你是python开发者,那么可以使用更加灵活的列表(list)和元组(tuple),来进行数据储存.下面我们先简单了解下列表和元组的基本使用. 列表 列表是动态的,长度可以改变,可以随意增加,修改或删除元素. 初始化列表 a = list() b = [] # 可以通过range快速创建list c

  • 利用Python list列表修改元素

    目录 1.Python list列表 2.修改单个元素 3.修改一组元素 1.Python list列表 Python 提供了两种修改列表(list)元素的方法,你可以每次修改单个元素,也可以每次修改一组元素(多个). 2.修改单个元素 修改单个元素非常简单,直接对元素赋值即可. 请看下面的例子: nums = [40, 36, 89, 2, 36, 100, 7] nums[2] = -26  #使用正数索引 nums[-3] = -66.2  #使用负数索引 print(nums) 运行结果

  • Python列表list的详细用法介绍

    目录 一. 创建列表 1.1 第一种 1.2 第二种 二. 查询列表 2.1 获取列表元素索引 2.2 获取列表单个元素 2.3 获取列表多个元素 2.3 判断元素是否存在于列表 三. 列表添加操作 四. 列表删除操作 五. 修改列表元素 六. 列表排序操作 一. 创建列表 列表(list)作为Python中基本的数据结构,是存储数据的容器,相当于其它语言中所说的数组. 模拟出的结构如下: 创建列表有两种方式: 1.1 第一种 使用“[ ]”进行创建,内部元素可以是任意数据类型: list1=[

  • Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)

    让我们来看一个例子: import numpy as np x=np.array([[1,2,3],[5,6,7],[7,8,9]]) print(x) Out[64]: array([[1, 2, 3], [5, 6, 7], [7, 8, 9]]) 以上的结果我想大家应该没问题把,就是定义了一个np数组,关键在下面 print(x[:,::-1]) Out[65]: [[3 2 1] [7 6 5] [9 8 7]] 以上的代码实现了一种功能,就是将数组倒序排列了,每个维度上倒序,这段代码怎

  • python中not、and和or的优先级与详细用法介绍

    前言 (小白专用)本次所分享的是Python中的not.and.or的执行时的优先级,以及他们的具体用法.本文比较详细,不喜勿喷. 一.not.and.or的含义以及优先级 对象 返回结果 优先顺序 not x if x is false,then True,else False 1 x and y if x is false,then x,else y 2 x or y if x is false,then y,else x 3 含义:not是 "非" :and是 "与&q

  • Python列表list数组array用法实例解析

    本文以实例形式详细讲述了Python列表list数组array用法.分享给大家供大家参考.具体如下: Python中的列表(list)类似于C#中的可变数组(ArrayList),用于顺序存储结构.   创建列表 复制代码 代码如下: sample_list = ['a',1,('a','b')] Python 列表操作 复制代码 代码如下: sample_list = ['a','b',0,1,3] 得到列表中的某一个值 复制代码 代码如下: value_start = sample_list

  • python 列表常用方法超详细梳理总结

    目录 列表是什么? 列表常用方法 1.append() 2.clear() 3.copy() 4.count() 5.extend() 6.index() 7.insert() 8.reverse() 9.remove() 10.pop() 11.sort() 列表是什么? 列表由一系列特定顺序排列的元素组成,你可以创建包含字母表中的所有字母.数字0~9.所有家庭成员姓名的列表等等,也可以将任何东西放入列表中,其中元素之间可以没有任何关系,鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(

  • Python操作注册表详细步骤介绍

    Python操作注册表步骤之1.打开注册表 对注册表进行操作前,必须打开注册表.在Python中,可以使用以下两个函数:RegOpenKey和RegOpenKeyEx.其函数原型分别如下所示. RegOpenKey(key, subKey , reserved , sam)RegOpenKeyEx (key, subKey , reserved , sam) 两个函数的参数一样.参数含义如下: key:必须为表10-1中列出的项. subKey:要打开的子项. reserved:必须为0. sa

  • 详解Python 协程的详细用法使用和例子

    从句法上看,协程与生成器类似,都是定义体中包含 yield 关键字的函数.可是,在协程中, yield 通常出现在表达式的右边(例如, datum = yield),可以产出值,也可以不产出 -- 如果 yield 关键字后面没有表达式,那么生成器产出 None. 协程可能会从调用方接收数据,不过调用方把数据提供给协程使用的是 .send(datum) 方法,而不是next(-) 函数. ==yield 关键字甚至还可以不接收或传出数据.不管数据如何流动, yield 都是一种流程控制工具,使用

  • Python中的with...as用法介绍

    这个语法是用来代替传统的try...finally语法的. 复制代码 代码如下: with EXPRESSION [ as VARIABLE] WITH-BLOCK 基本思想是with所求值的对象必须有一个__enter__()方法,一个__exit__()方法. 紧跟with后面的语句被求值后,返回对象的__enter__()方法被调用,这个方法的返回值将被赋值给as后面的变量.当with后面的代码块全部被执行完之后,将调用前面返回对象的__exit__()方法. 复制代码 代码如下: fil

  • Python控制键盘鼠标pynput的详细用法

    pynput这个库让你可以控制和监控输入设备. 对于每一种输入设备,它包含一个子包来控制和监控该种输入设备: pynput.mouse:包含控制和监控鼠标或者触摸板的类. pynput.keyboard:包含控制和监控键盘的类. 地址:https://pypi.python.org/pypi/pynput 基本用法介绍: from pynput.mouse import Button, Controller import time mouse = Controller() print(mouse

  • python 列表,数组,矩阵两两转换tolist()的实例

    通过代码熟悉过程: # -*- coding: utf-8 -*- from numpy import * a1 =[[1,2,3],[4,5,6]] #列表 print('a1 :',a1) #('a1 :', [[1, 2, 3], [4, 5, 6]]) a2 = array(a1) #列表 -----> 数组 print('a2 :',a2) #('a2 :', array([[1, 2, 3],[4, 5, 6]])) a3 = mat(a1) #列表 ----> 矩阵 print(

随机推荐