首页 > 编程语言 >python数据容器之列表

python数据容器之列表

时间:2024-04-02 17:02:38浏览次数:28  
标签:容器 下标 python 元素 list 列表 语法 循环

python数据容器-列表

1、列表

  • 列表的定义语法 :[元素1, 元素2, 元素3, …]

  • 列表内的每一个数据,称之为元素

  • 以 [ ] 作为标识

  • 列表内每一个元素之间用, 逗号隔开

  • 注意:列表可以一次存储多个数据,且可以为不同的数据类型,支持嵌套

  • 列表的特点:

  • 可以容纳多个元素,上限为2**63-1

  • 可以容纳不同类型的元素(混装)

  • 数据是有序存储的(有下标序号)

  • 允许重复数据存在

  • 可以修改(增加或删除元素等)

name_list = ["like", 222, True]
num_list = [[1, 2, 3], "数字", [4, 5, 6]]
  • 下标索引

  • 列表中的每一个元素,都有其位置下标索引,从前向后的方向,从0开始,依次递增

  • 或者,可以反向索引,也就是从后向前:从-1开始,依次递减(-1、-2、-3…)

  • 嵌套列表:如上面的例子,取出2:num_list[0][1]

  • 我们只需要按照下标索引,即可取得对应位置的元素。 要注意下标索引的取值范围,超出范围无法取出元素,并且会报错。

列表常用操作

  1. 查找某元素的下标
    功能:查找指定元素在列表的下标,如果找不到,报错ValueError

    语法:列表.index(元素)

  2. 修改特定下标位置的元素值
    语法:列表[下标] = 值
    可以使用如上语法,直接对指定下标(正向、反向下标均可)的值进行:重新赋值

  3. 向列表中插入元素
    语法:列表.insert(下标, 元素),在指定的下标位置,插入指定的元素

  4. 追加元素方式1:添加元素到列表中
    语法:列表.append(元素),将指定元素,追加到列表的尾部

  5. 追加元素方式2:
    语法:列表.extend(其它数据容器),将其它数据容器的内容取出,依次追加到列表尾部

    list_1 = [1, 2, 3, 4, 5, 6]
    list_2 = [7, 8, 9]
    list_1.extend(list_2)
    print(list_1)  # [1, 2, 3, 4, 5, 6, 7, 8, 9]
    
  6. 删除元素

    语法1: del 列表[下标] 只有删除功能

    语法2:列表.pop(下标) 将元素从列表中取出,等同于删除,取出的元素可以作为返回值传给变量

list_1 = [1, 2, 3, 4, 5, 6]
get_element = list_1.pop(2)  # 取出的值传给变量
print(list_1)  # [1, 2, 4, 5, 6]  
print(get_element)    # 3
	语法3: 列表.remove(元素)删除某元素在列表中的第一个匹配项
  1. 清空列表内容,语法:列表.clear()

  2. 统计某元素在列表内的数量,语法:列表.count(元素)

  3. 统计列表内,有多少元素

    语法:len(列表)
    可以得到一个int数字,表示列表内的元素数量

列表的遍历

  • 将容器内的元素依次取出进行处理的行为,称之为:遍历、迭代。

  • 利用for 和 while循环

  • while循环和for循环,都是循环语句,但细节不同:

  • 在循环控制上:
    while循环可以自定循环条件,并自行控制
    for循环不可以自定循环条件,只可以一个个从容器内取出数据

  • 在无限循环上:
    while循环可以通过条件控制做到无限循环
    for循环理论上不可以,因为被遍历的容器容量不是无限的

  • 在使用场景上:
    while循环适用于任何想要循环的场景
    for循环适用于,遍历数据容器的场景或简单的固定次数循环场景

  1. while循环遍历列表
    循环条件:
    定义一个变量表示下标,从0开始
    循环条件为 下标值 < 列表的元素数量
def get_name():
    """
    遍历列表,依次取出列表中的元素,并输出
    :return: None
    """
    list_1 = ["zhang", "wang", "li"]

    index = 0
    while index < len(list_1):
        one_name = list_1[index]
        print(f"取出来的名字是:{one_name}")
        index += 1
  1. for循环实现列表的遍历
    表示,从容器内,依次取出元素并赋值到临时变量上。 在每一次的循环中,我们可以对临时变量(元素)进行处理。
    语法: for 临时变量 in 数据容器:
list_1 = ["zhang", "wang", "li"]
for i in list_1:
    print(i)

标签:容器,下标,python,元素,list,列表,语法,循环
From: https://blog.csdn.net/m0_58561375/article/details/137265111

相关文章

  • 入门级Python编程题(2)
    编写一个Python程序,找出列表中第n小的整数。定义函数find_nth_smallest(),该函数接受整数列表numbers_list和整数n作为参数。在函数内部,返回列表中第n小的整数。如果n大于列表的长度,则返回None。deffind_nth_smallest(numbers_list,n):ifn>len(numbers_list):......
  • python学习-python解释器的安装
    先进入python下载的官网:https://www.python.org/2.根据自己电脑的系统来选择下载哪个解释器的版本,我的是Windows,选择的是Windows,截图如下:3.再根据自己Windows的版本来选择下载对应的版本,以Python3.11.8版本为例,(64-bit),截图如下:4.下载完成之后双击对应的exe文件,进行安装,安......
  • Python解压序列
    一.普遍情况:x,y,z=1,2,3print("x:",x)#x:1print("y:",y)#y:2print("z:",z)#z:3二.针对元祖:name=("qiaobushi","wanglihong","leibushi")x,y,z=nameprint(name)print("x:",x)print(......
  • Python单双引号转义符输出
    一、单引号输出#单引号print('Hello,world')结果:Hello,world二、双引号输出#双引号print("Hello,world")结果:Hello,world三、单双混搭#单双混搭print("'Hello,world'")print('"Hello,world"')结果:'Hello,world'......
  • 列表+字典内置方法
    字符串查找​ .find('字符',起始查找位,结束查找位)默认从左往右找,默认值找一次,从右向左找可以用rfind,找到返回索引位置,找不到输出-1.index('字符',起始查找位,结束查找位)默认从左往右找,默认值找一次,从右向左找可以用rindex,找到返回索引位置,找不到则报错.count('字符')默认......
  • python如何处理文本错误
    在python中,如果读取的文本文件不在程序的目录中,会提示FileNotFoundError如果不能确定文本文件是否在目录中,可以用tryexcept语句代码如下frompathlibimportPathpath=Path('alice.txt')try:contents=path.read_text(encoding='utf_8')exceptFileNotFoundError:......
  • Python从0到100(九):Python字符串介绍及使用
    一、字符串的定义1.什么是字符串字符串是一种表示文本数据的类型。所谓字符串,就是由零个或多个字符组成的有限序列,一般记为:s=a......
  • python 操作excel ,累加insert
      importosfromopenpyxl.reader.excelimportload_workbookimportpandasaspddefinsert(relist,one):#data=[{"pol":one['pol'],"pod":one["pod"],"gc_scac":z["group"],&quo......
  • 前端学习-UI框架学习-Bootstrap5-015-列表组
    菜鸟教程链接列表组+active激活+disabled禁用要创建列表组,可以在元素上添加.list-group类,在元素上添加.list-group-item类:<template><divclass="containermt-3"><h2>列表组</h2><p>列表组+active激活+disabled禁用</p><......
  • agate 一个方便的python 数据分析包
    对于基于python数据处理的同学,使用pandas的可能比较多,但是agate也是一个很不错的选择,比如dbt对于seed模型的处理就基于了agateagate包含的特性易读以及用户用好的api完整的类似sql的操作unicode支持比较完整的文档插件化的扩展支持(比如sql,excel)与ipython,jupyter以......