美文网首页
可变序列添加多个元素

可变序列添加多个元素

作者: eeert2 | 来源:发表于2020-04-24 11:17 被阅读0次

对于 可变序列list,collections.deque,我们添加一个元素可以通过

  • .append(value) 尾部添加
  • .insert(index, value) 指定下标插入
对可变序列添加多个元素呢 ?
  • 第一种,通过 + 完成
if __name__ == '__main__':
    data = [1, 3, 5]
    target = [2, 4, 6]
    ret = data + target
    data += target
    print(data)  # [1, 3, 5, 2, 4, 6]

这种方法有需要注意的地方,+ 前后的两个参数类型必须相同

  • 第二种,通过.extend()或者 +=
    对于第一种情况的限制,可以通过.extend()或者 +=来实现的
def target():
    """生成器"""
    for value in range(5):
        yield value


if __name__ == '__main__':
    data = []
    data.extend(target())
    print(data)

三、备注

网上有说+=.extend()效果相同的,甚至说+=调用了.extend()。实际上这种说法是不对的。
+=在完成数据扩展后有一步将自身引用赋值给自身的操作
如下:使用 extend()可以正常进行

if __name__ == '__main__':
    test = (1, 2, [3])
    test[2].extend(target())
    print(test)  # (1, 2, [3, 0, 1, 2, 3, 4])

使用 += 就会报错:

if __name__ == '__main__':
    test = (1, 2, [3])
    test[2]+=target()
    print(test)

>>> TypeError: 'tuple' object does not support item assignment

相关文章

  • 可变序列添加多个元素

    对于 可变序列list,collections.deque,我们添加一个元素可以通过 .append(value)...

  • scala之ListBuffer

    基本介绍 ListBuffer是可变的集合,可以添加,删除元素,属于序列 创建 访问 添加 删除

  • python+AI第三课

    列表 列表是python中内置有序可变序列,所有元素放在[ ]中,每个元素使用逗号隔开 创建列表 列表的添加操作使...

  • 元祖tuple

    列表属于可变序列,可以任意修改列表中的元素。元祖属于不可变序列,不能修改元祖中的元素,即元祖没有增加元素、修改元素...

  • 【Python】序列:列表、元组、文本序列

    序列 可变序列:列表list 不可变序列:元组tuple,字符串str 生成器:范围range 每个元素被分配一个...

  • Python:list和tuple

    list list是一种可变的有序列表,可以随时添加或删除其中的元素,使用[ ]大括号赋值。例如,列出班里所有同学...

  • py_08_元组相关操作和方法(count index)

    元组和namedtuple命令元组 列表属于可变序列,可以任意修改列表中的元素。元组属于不可变序列,不能修改元组中...

  • 数据团Python_4. 列表与文本序列核心知识点

    4. 列表与文本序列核心知识点 4.1 可变序列list常用操作1_添加/删除/插入 1. 添加 添加单个x.ap...

  • swift 数组

    定义一个不可变数 或者 定义可变数组 定义一个空数组 可变数组添加元素 删除数组 修改元素 取出某个元素 遍历数组...

  • swift字典

    创建一个不可变字典 创建一个可变字典 添加元素 删除元素 修改元素 通过key取出value 遍历字典 合并字典

网友评论

      本文标题:可变序列添加多个元素

      本文链接:https://www.haomeiwen.com/subject/ltpxwhtx.html