• Python list列表修改元素


    Python 提供了两种修改列表(list)元素的方法,你可以每次修改单个元素,也可以每次修改一组元素(多个)。

    修改单个元素

    修改单个元素非常简单,直接对元素赋值即可。请看下面的例子:

    1. nums = [40, 36, 89, 2, 36, 100, 7]
    2. nums[2] = -26 #使用正数索引
    3. nums[-3] = -66.2 #使用负数索引
    4. print(nums)

    运行结果:

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

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

    修改一组元素

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

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

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

    运行结果:
    [40, 45.25, -77, -52.5, 36, 100, 7]

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

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

    运行结果:
    [40, 36, 89, 2, -77, -52.5, 999, 36, 100, 7]

    使用切片语法赋值时,Python 不支持单个值,例如下面的写法就是错误的:https://www.furuihua.cn/shenzhen/pingshan/

    nums[4: 4] = -77

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

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

    运行结果:
    ['H', 'e', 'X', 'Y', 'Z', 'o']

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

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

    运行结果:
    [40, 0.025, 89, -99, 36, 20.5, 7]

  • 相关阅读:
    移动平台开发需要的记录(续)
    移动平台开发需要的记录
    Chrome浏览器被劫持
    记录一个GO安装问题
    记录开发环境配置 MySql(5.7.17)+EF6.x+VS2017(15.7.1)
    win7(x64)下安装cocos2d并编译安卓项目
    Xocde一次版本升级遇到的问题 (Code Sign Error)
    【转】SqlServer将没有log文件的数据库文件附加到服务器中
    [转]IIS6.0迁移至IIS7.0
    重置VS设置
  • 原文地址:https://www.cnblogs.com/furuihua/p/12582591.html
Copyright © 2020-2023  润新知