zoukankan      html  css  js  c++  java
  • Python list列表添加元素的3种方法

    实际开发中,经常需要对 Python 列表进行更新,包括向列表中添加元素、修改表中元素以及删除元素。本节先来学习如何向列表中添加元素。

    《Python序列》一节告诉我们,使用+运算符可以将多个序列连接起来;列表是序列的一种,所以也可以使用+进行连接,这样就相当于在第一个列表的末尾添加了另一个列表。无铁芯直线电机

    请看下面的演示:

    1. language = ["Python", "C++", "Java"]
    2. birthday = [1991, 1998, 1995]
    3. info = language + birthday
    4. print("language =", language)
    5. print("birthday =", birthday)
    6. print("info =", info)

    运行结果:

    language = ['Python', 'C++', 'Java']
    birthday = [1991, 1998, 1995]
    info = ['Python', 'C++', 'Java', 1991, 1998, 1995]

    从运行结果可以发现,使用+会生成一个新的列表,原有的列表不会被改变。

    +更多的是用来拼接列表,而且执行效率并不高,如果想在列表中插入元素,应该使用下面几个专门的方法。

    Python append()方法添加元素

    append() 方法用于在列表的末尾追加元素,该方法的语法格式如下:

    listname.append(obj)

    其中,listname 表示要添加元素的列表;obj 表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等。

    请看下面的演示:

    1. l = ['Python', 'C++', 'Java']
    2. #追加元素
    3. l.append('PHP')
    4. print(l)
    5. #追加元组,整个元组被当成一个元素
    6. t = ('JavaScript', 'C#', 'Go')
    7. l.append(t)
    8. print(l)
    9. #追加列表,整个列表也被当成一个元素
    10. l.append(['Ruby', 'SQL'])
    11. print(l)

    运行结果为:

    ['Python', 'C++', 'Java', 'PHP']
    ['Python', 'C++', 'Java', 'PHP', ('JavaScript', 'C#', 'Go')]
    ['Python', 'C++', 'Java', 'PHP', ('JavaScript', 'C#', 'Go'), ['Ruby', 'SQL']]

    可以看到,当给 append() 方法传递列表或者元组时,此方法会将它们视为一个整体,作为一个元素添加到列表中,从而形成包含列表和元组的新列表。

    Python extend()方法添加元素

    extend() 和 append() 的不同之处在于:extend() 不会把列表或者元祖视为一个整体,而是把它们包含的元素逐个添加到列表中。

    extend() 方法的语法格式如下:

    listname.extend(obj)

    其中,listname 指的是要添加元素的列表;obj 表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等。

    请看下面的演示:

    1. l = ['Python', 'C++', 'Java']
    2. #追加元素
    3. l.extend('C')
    4. print(l)
    5. #追加元组,元祖被拆分成多个元素
    6. t = ('JavaScript', 'C#', 'Go')
    7. l.extend(t)
    8. print(l)
    9. #追加列表,列表也被拆分成多个元素
    10. l.extend(['Ruby', 'SQL'])
    11. print(l)

    运行结果:

    ['Python', 'C++', 'Java', 'C']
    ['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go']
    ['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go', 'Ruby', 'SQL']

    Python insert()方法插入元素

    append() 和 extend() 方法只能在列表末尾插入元素,如果希望在列表中间某个位置插入元素,那么可以使用 insert() 方法。

    insert() 的语法格式如下:

    listname.insert(index , obj)

    其中,index 表示指定位置的索引值。insert() 会将 obj 插入到 listname 列表第 index 个元素的位置。

    当插入列表或者元祖时,insert() 也会将它们视为一个整体,作为一个元素插入到列表中,这一点和 append() 是一样的。

    请看下面的演示代码:

    1. l = ['Python', 'C++', 'Java']
    2. #插入元素
    3. l.insert(1, 'C')
    4. print(l)
    5. #插入元组,整个元祖被当成一个元素
    6. t = ('C#', 'Go')
    7. l.insert(2, t)
    8. print(l)
    9. #插入列表,整个列表被当成一个元素
    10. l.insert(3, ['Ruby', 'SQL'])
    11. print(l)
    12. #插入字符串,整个字符串被当成一个元素
    13. l.insert(0, "http://c.biancheng.net")
    14. print(l)

    输出结果为:

    ['Python', 'C', 'C++', 'Java']
    ['Python', 'C', ('C#', 'Go'), 'C++', 'Java']
    ['Python', 'C', ('C#', 'Go'), ['Ruby', 'SQL'], 'C++', 'Java']
    ['http://c.biancheng.net', 'Python', 'C', ('C#', 'Go'), ['Ruby', 'SQL'], 'C++', 'Java']

    提示,insert() 主要用来在列表的中间位置插入元素,如果你仅仅希望在列表的末尾追加元素,那我更建议使用 append() 和 extend()。

  • 相关阅读:
    Spring HttpIvoker实现Java的远程调用
    基于struts2框架文件的上传与下载
    12月9号linux学习
    2019.7.7 练习题
    题解 儿童节继续欢乐赛
    Winfroms看看吧客官~
    group by应用
    基于Windows Azure 搭建基于SharePoint 2010 Intranet、Extranet、Internet (1): 安装SharePoint 2010
    基于Windows Azure 搭建基于SharePoint 2010 Intranet、Extranet、Internet (2): 创建并发布SharePoint Intranet站点
    Inside Microsoft SharePoint 2010 简译(1): SharePoint 2010开发者路线图
  • 原文地址:https://www.cnblogs.com/furuihua/p/12574343.html
Copyright © 2011-2022 走看看