js 向list添加元素_深入Python(16)-向 List 插入 1 个元素

本文探讨了Python中List如何插入元素,包括insert、append和extend等方法。重点讲解了插入一个元素的详细过程,涉及列表大小调整和元素后移。还提到list_resize函数的内存管理策略,并预告了追加数据的实现。
摘要由CSDN通过智能技术生成

8acabefd244e36581214bcee4c1e9d16.png

List 最常用的几种操作有:

  • 插入元素,比如 insert、append、extend;
  • 弹出元素,比如 pop、delete;
  • 切片 slice;

今天主要看一下 List 如何增加元素。最简单的增加 1 个元素,代码如下:

// Objects/listobject.c:285
static int
ins1(PyListObject *self, Py_ssize_t where, PyObject *v)
{
    
    Py_ssize_t i, n = Py_SIZE(self);
    PyObject **items;

    // 省略一些无关的错误处理代码

    // 调整 List 大小
    if (list_resize(self, n+1) < 0)
        return -1;

   // 计算负数位置
    if (where < 0) {
    
        where += n;
        if (where < 0)
            where = 0;
    }
    if (where > n)
        where = n;

    // 插入位置之后的元素后移
    items = self->ob_item;
    for (i = n; --i >&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值