利用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)

运行结果:

[40, 36, -26, 2, -66.2, 100, 7]

使用索引得到列表元素后,通过=赋值就改变了元素的值。

3.修改一组元素

Python 支持通过切片语法给一组元素赋值。在进行这种操作时,如果不指定步长(step 参数),Python 就不要求新赋值的元素个数与原来的元素个数相同;这意味,该操作既可以为列表添加元素,也可以为列表删除元素。

下面的代码演示了如何修改一组元素的值:

nums = [40, 36, 89, 2, 36, 100, 7]
#修改第 1~4 个元素的值(不包括第4个元素)
nums[1: 4] = [45.25, -77, -52.5]
print(nums)

运行结果:

[40, 45.25, -77, -52.5, 36, 100, 7]

如果对空切片(slice)赋值,就相当于插入一组新的元素:

nums = [40, 36, 89, 2, 36, 100, 7]
#在4个位置插入元素
nums[4: 4] = [-77, -52.5, 999]
print(nums)

运行结果:

[40, 36, 89, 2, -77, -52.5, 999, 36, 100, 7]

使用切片语法赋值时,Python 不支持单个值,例如下面的写法就是错误的:

nums[4: 4] = -77

但是如果使用字符串赋值,Python 会自动把字符串转换成序列,其中的每个字符都是一个元素,

请看下面的代码:

s = list("Hello")
s[2:4] = "XYZ"
print(s)

运行结果:

[‘H’, ‘e’, ‘X’, ‘Y’, ‘Z’, ‘o’]

使用切片语法时也可以指定步长(step 参数),但这个时候就要求所赋值的新元素的个数与原有元素的个数相同,例如:

nums = [40, 36, 89, 2, 36, 100, 7]
#步长为2,为第1、3、5个元素赋值
nums[1: 6: 2] = [0.025, -99, 20.5]
print(nums)

运行结果:

[40, 0.025, 89, -99, 36, 20.5, 7]

到此这篇关于利用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列表中删除多个重复元素操作示例

    本文实例讲述了Python list列表中删除多个重复元素操作.分享给大家供大家参考,具体如下: 我们以下面这个list为例,删除其中所有值为6的元素: l=[9,6,5,6,6,7,8,9,6,0] 首先尝试remove方法: l.remove(6) print(l) 结果为:[9, 5, 6, 6, 7, 8, 9, 6, 0],只删除了第一个为6的元素. 如果采用for循环遍历各元素: for x in l: if x == 6: l.remove(x) 结果为[9, 5, 7, 8, 9

  • Python列表(list)所有元素的同一操作解析

    针对很普遍的每个元素的操作会遍历每个元素进行操作. 这里给出了几种写法,列表每个元素自增等数学操作同理: 示例:整形列表ilist加1个数.元素类型转字符串: ilist = [1, 2, 3, 10, 11, 12] # 每个元素加5,四种方法 for i, v in enumerate(ilist): ilist[i] = v + 5 [ x+5 for x in ilist ] map(lambda x:x+5, ilist) # 仅python 2 list(map(lambda x:x

  • 利用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求列表对应元素的乘积和的实现

    那天偶尔看到看到一个小问题:两个不等长列表a=[1,2,3],b=[4,5,6,7],求它们对应元素的乘积的和. 我一开始想到的方法就是选择更小数组作为循环长度然后相乘求和: a = [1,2,3] b = [4,5,6,7] sum = 0 for i in range(0,min(len(a),len(b))): number += a[i]*b[i] print(sum) 但是后来我想到了一种更为巧妙的方法,利用函数zip(): a = [1,2,3] b = [4,5,6,7] all

  • 如何利用python实现列表嵌套字典取值

    目录 一.实例 二.解决思路 三.代码示例 一.实例 将以下列表的backup_unit_id全部提取出来 示例: dbs = [{         "backup_unit_id": 163,         "data_node_id": 2,         "attribute": {             "convertor_id": 4,             "channel_num":

  • 利用Python如何批量修改数据库执行Sql文件

    前言 由于上篇文章中批量修改了文件,有的时候数据库也需要批量修改一下,之前的做法是使用宝塔的phpMyAdmin导出一个已经修改好了的sql文件,然后依次去其他数据库里导入,效率不说极低,也算低了,且都是些重复性的劳动,所以打算用Python来批量执行sql 环境 版本:Python3.6 系统:MacOS IDE:PyCharm 第三方库:pymysql Show Code import pymysql host = 'xxx.65.9.191' username = 'root' passw

  • 详解Python遍历列表时删除元素的正确做法

    一.问题描述 这是在工作中遇到的一段代码,原理大概和下面类似(判断某一个元素是否符合要求,不符合删除该元素,最后得到符合要求的列表): a = [1,2,3,4,5,6,7,8] for i in a: if i>5: pass else: a.remove(i) print(a) 运行结果: 二.问题分析 因为删除元素后,整个列表的元素会往前移动,而i却是在最初就已经确定了,是不断增大的,所以并不能得到想要的结果. 三.解决方法 1.遍历在新的列表操作,删除是在原来的列表操作 a = [1,2

  • python中list列表删除元素的四种方法实例

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

  • 4种方法python批量修改替换列表中元素

    在日常开发中,我们可能会遇到批量修改列表元素的需求.可以使用列表推导式来快速的实现,在这里做了一些技术总结可供参考. 一,修改单个词语(不建议): aaa=['黑色','红色','白色','黑色'] aaa=str(aaa) bbb=aaa.replace("黑色","黄色") bbb 结果: "['黄色', '红色', '白色', '黄色']" 二,修改单个词语 lists = ['神奇', '建投', '证券', '有限公司', '今天',

  • Python实现列表删除重复元素的三种常用方法分析

    本文实例讲述了Python实现列表删除重复元素的三种常用方法.分享给大家供大家参考,具体如下: 给定一个列表,要求删除列表中重复元素. listA = ['python','语','言','是','一','门','动','态','语','言'] 方法1,对列表调用排序,从末尾依次比较相邻两个元素,遇重复元素则删除,否则指针左移一位重复上述过程: def deleteDuplicatedElementFromList(list): list.sort(); print("sorted list:%

随机推荐