Python修改 list列表元素

Python 有两种修改列表元素的方法:

  1. 修改单个元素
  2. 同时修改多个元素

修改单个元素

修改列表单个元素很简单,直接给对应索引位置的元素赋值即可。语法为:列表变量名[索引值]=值

实例如下:

tech = ['Python','Web','Spider']

tech[1] = 'Big Data'
print(tech)

输出结果为:

['Python', 'Big Data', 'Spider']

同时修改多个元素

Python支持使用切片语法同时修改多个列表元素,严格来讲,它所做的应该是替换。

它的语法格式为:

列表变量名[起始索引值:结束索引值]=[元素A,元素B...]

下面简单的示例演示了如何修改多个元素的值:

items = [1,3,5,7,9,11,13]
items[2:5]=[2,4,6]
print(items)

输出的结果为:

[1, 3, 2, 4, 6, 11, 13]

可以看到,它将索引值从2到4的元素,依次进行了替换。并且根据切片的特性,它修改的是索引2、3、4共3个元素,不会将索引值为5的元素修改掉。想了解更多切片的内容,可点击《Python 序列详解(含索引、切片) —Python技术站》文章查看。

正如上文所讲,此方式其实是对多个元素进行替换,也就是说,你想要替换的元素既可以多也可以少,也就是既可以新增,也可以删除。

实例如下:

items = [1,2,3,4,5,6,7,8,9,10]
#替换为更多个元素
items[2:5]=[8,8,8,8,8,8,8,8,8,8,8,8]
print(items)

items2 = [1,2,3,4,5,6,7,8,9]

#替换为更少个元素
items2[2:6]=[0,0]
print(items2)

输出结果为:

[1, 2, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 6, 7, 8, 9, 10]
[1, 2, 0, 0, 7, 8, 9]

另外值得一提的是,如果切片指定了步长,那么你要替换的元素必须与原来的元素数量一致,否则会报ValueError的异常。

items = [1,2,3,4,5,6,7,8,9,10]
#步长为2,为第2、4、6个元素赋值
items[2:8:2]=[0,0,0]
print(items)

items2 = [1,2,3,4,5,6,7,8,9,10]
#赋值时数量多一位
items2[2:8:2]=[0,0,0,0]
print(items2)

输出结果为:

[1, 2, 0, 4, 0, 6, 0, 8, 9, 10]
Traceback (most recent call last):
File "C:/Program Files (x86)/Shared/Python37_64/demo/demo1.py", line 9, in
items2[2:8:2]=[0,0,0,0]
ValueError: attempt to assign sequence of size 4 to extended slice of size 3

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python修改 list列表元素 - Python技术站

(0)
上一篇 2023年1月27日 上午9:18
下一篇 2023年1月30日 下午9:25

相关文章

  • 给Python list列表添加元素

    Python给list列表添加元素的函数有:append()、extend()、insert()。其中append()和extend()在list列表末尾追加元素,insert()在list列表任意位置插入元素。以下是三者的具体区别:

    2023年1月20日
    00
  • Python中的集合(set)是什么?

    集合是Python中的一种数据结构,与列表、元组、字典等数据结构不同,它没有重复的元素。它是一种可变的数据类型,可以在运行时动态添加或删除元素。集合的元素可以是任何类型,但通常是数字、字符串或其他不可变类型。 集合有以下几个特征: 集合中的元素是无序的,也就是说,每次创建集合时,集合中的元素的顺序可能不同。 集合中的元素是唯一的,也就是说,集合中的元素不能重…

    2023年2月14日
    00
  • Python 序列详解(含索引、切片)

    序列,指的是一块连续的、可存放多个值的内存空间,这些值按顺序排列,并且每个值所在的位置都有个编号(称为索引),可以通过编号访问它们。形象化地解释,你可以将它看做是一家旅店,店中的每个房间就是序列的一个个内存空间,每个房间的房间号就是索引值。我们想去哪个房间,通过房间号(索引)查找就可以。

    2023年1月15日
    30
  • Python list是什么?它与数组有什么区别?

    在我们实际开发过程中,经常需要把多个数据存储到一个变量中的情况,为的是后续代码的使用。 这种可以存储多个数据的元素,在一些高级语言中称为Array(数组)。 而在Python当中,没有数组,但却加入了更为强大的list(列表)。 一般情况下,高级语言中的一个数组只能存入同一数据类型的数据,比如 int数组,只允许存入int类型的数,string数组,只允许存…

    2023年1月15日
    00
  • Python小数类型(float)详解

    浮点型 Python中,小数也称为浮点数,类型名是“float”。 “浮点数”,是计算机采用的一种数字的表示方法,它相对于定点数加上一个阶码。阶码指明了小数点在定点数中的位置,如果小数点发生移动,就称为浮点数;如果小数点不动,就称为定点数。 其他强类型语言根据存储空间的大小,将浮点型分为了float、double、decimal等类型。而在Python当中只…

    2022年11月20日
    00
  • Python dict字典详解

    Python 中的字典是一种可变的、无序的数据类型,用于存储键值对(key-value)的数据结构。字典的特点在于可以快速的查找和修改键值对的值,是一种非常灵活、方便的数据结构。 字典类型是 Python 中唯一的映射类型。“映射”是数学中的术语,简单理解,它指的是元素之间相互对应的关系,即通过一个元素,可以唯一找到另一个元素。 字典类型所具有的主要特征如下…

    2023年2月14日
    00
  • 详解Python中复数类型的创建、比较与运算!

    Python 是一门支持复数运算的编程语言,复数(Complex)是由实数和虚数部分组成的数学概念,其常用表示形式为 $a + bj$,其中 a 表示实部,b 表示虚部,复数的虚部以 j 或者 J 作为后缀。 Python 中的复数类型支持常见的数学运算,如加、减、乘、除和幂运算。 Python创建复数的两种方式 Python 中的复数类型可以使用内置函数 …

    2023年2月23日
    00
  • Python字符串(String)类型

    Python中的字符串类型 字符串(String)指的是一个或多个字符的组合。在Python这门语言中,字符串必须由双引号""或者单引号”包围,格式如下: "字符串内容"’字符串内容’ 字符串中的内容可以随便书写,包含数字、字母、标点、特殊符号、中文、英文等等。 下面都是合法的字符串: “12342” ‘12345a…

    2022年11月28日
    10

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

合作推广
合作推广
分享本页
返回顶部