10.容器-list列表

news2024/12/4 14:56:11

定义一个list使用[]

定义一个空列表 [] 或者 list()

列表中每个元素之间用逗号隔开

a_list = ['aa', 'bb', 'cc']
print(a_list)
# <class 'list'>
print(type(a_list))

list列表可以存储不同类型的元素

a_list = ['aa', 'bb', 'cc']
print(a_list)
# <class 'list'>
print(type(a_list))

b_list = list()
c_list = []
# list可以存储不同类型的元素
b_list = [True, False, "aa", 11, 3.14]
print(b_list)

list列表支持嵌套

b_list = [[1, 2, 3], [True, False], ['a', 'b', 'c']]
print(b_list)

list列表是有序的,可以根据下标取出元素,下标为负值反向取出元素

 从前向后从0开始,每次+1,从后向前-1开始,每次-1

通过下标取数据,一定不能超出范围,否则会报错

a_list = ['aa', 'bb', 'cc']
# 正向取出元素
# aa
print(a_list[0])
# bb
print(a_list[1])
# 反向取出元素
# cc
print(a_list[-1])
# bb
print(a_list[-2])

取出嵌套列表中的元素

b_list = [[1, 2, 3], [True, False], ['a', 'b', 'c']]
# True
print(b_list[1][0])
# b
print(b_list[2][1])

方法

函数def定义在class类的成员,那么函数就被称为方法

# 函数
def add(x, y):
    return x + y


# 5
print(add(1, 4))


# 类
class Student:
    # 方法
    def sum(self, x, y):
        return x + y


stu1 = Student()
val = stu1.sum(4, 5)
# 9
print(val)

list本身就是一个类,里面定义了很多方法可供使用

index方法,获取元素在list中的下标索引位置

a_list = ['aa', 'bb', 'cc']
# index方法返回元素在list中的小标,如果找不到该元素报错
# 1
print(a_list.index('bb'))
# ValueError: 'b' is not in list
print(a_list.index('b'))

修改特定下标索引的值

a_list = ['aa', 'bb', 'cc']
# ['aa', 'bb', 'cc']
print(a_list)
# 通过元素下标修改,特定位置上的值
a_list[1] = 'tt'
# ['aa', 'tt', 'cc']
print(a_list)

insert方法,给list指定位置插入一个元素

a_list = ['aa', 'bb', 'cc']
# 在指定下标位置插入特定元素
# ['aa', 'bb', 'cc']
print(a_list)
a_list.insert(0, 'xx')
# ['xx', 'aa', 'bb', 'cc']
print(a_list)

append方法,给list的尾部追加元素

a_list = ['aa', 'bb', 'cc']
# ['aa', 'bb', 'cc']
print(a_list)
# 给list的尾部追加元素
a_list.append("xx")
# ['aa', 'bb', 'cc', 'xx']
print(a_list)

extend方法,给list的尾部追加另一个list

a_list = ['aa', 'bb', 'cc']
b_list = ["1", '2', '3']
a_list.extend(b_list)
# ['aa', 'bb', 'cc', '1', '2', '3']
print(a_list)

del方法删除元素,pop方法删除元素

a_list = ['aa', 'bb', 'cc']
del a_list[2]
# cc
print(a_list)

a_list = ['aa', 'bb', 'cc']
ele = a_list.pop(2)
# cc
print(ele)

取出最后一个元素

a_list = ['aa', 'bb', 'cc']
# cc
print(a_list[-1])

remove方法,通过值匹配第一个元素并进行删除

a_list = ['aa', 'bb', 'aa', 'cc']
a_list.remove('aa')
# ['bb', 'aa', 'cc']
print(a_list)

 clear方法,清空整个列表

a_list = ['aa', 'bb', 'aa', 'cc']
#  清空整个列表
a_list.clear()
# []
print(a_list)

count方法,统计集合中元素的个数

a_list = ['aa', 'bb', 'aa', 'cc']
num = a_list.count('aa')
# 2
print(num)

len函数用来获取集合list的大小

a_list = ['aa', 'bb', 'aa', 'cc']
# 4
print(len(a_list))

 while方式迭代list集合

def list_iterator():
    """
    while循环迭代输出集合list中的元素
    :return: 
    """
    a_list = [21, 25, 21, 23, 22, 20]
    i = 0
    while i < len(a_list):
        ele = a_list[i]
        print(ele)
        i += 1


list_iterator()

for循环方式迭代list集合

def list_iterator():
    """
    for循环迭代输出集合list中的元素
    :return:
    """
    a_list = [21, 25, 21, 23, 22, 20]
    for ele in a_list:
        print(ele)


list_iterator()
a_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b_list = []
for ele in a_list:
    if ele % 2 == 0:
        b_list.append(ele)
print(b_list)

c_list = []
count = 0
while count < len(a_list):
    ele = a_list[count]
    if ele % 2 == 0:
        c_list.append(ele)
    count += 1
print(c_list)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2253096.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

BiGRU:双向门控循环单元在序列处理中的深度探索

一、引言 在当今的人工智能领域&#xff0c;序列数据的处理是一个极为重要的任务&#xff0c;涵盖了自然语言处理、语音识别、时间序列分析等多个关键领域。循环神经网络&#xff08;RNN&#xff09;及其衍生结构在处理序列数据方面发挥了重要作用。然而&#xff0c;传统的 RN…

PDF与PDF/A的区别及如何使用Python实现它们之间的相互转换

目录 概述 PDF/A 是什么&#xff1f;与 PDF 有何不同&#xff1f; 用于实现 PDF 与 PDF/A 相互转换的 Python 库 Python 实现 PDF 转 PDF/A 将 PDF 转换为 PDF/A-1a 将 PDF 转换为 PDF/A-1b 将 PDF 转换为 PDF/A-2a 将 PDF 转换为 PDF/A-2b 将 PDF 转换为 PDF/A-3a 将…

计费结算系统的架构设计思路

背景 近期负责关于集团的计费结算相关的系统&#xff0c;相对于2C系统的大流量&#xff0c;高并发的场景&#xff0c;计费和结算的信息对稳定性要求更高。对时效性要求并没有过于严苛的要求。那么接下来就和大家分享一下计费结算系统的架构设计。 模块划分 我们暂且将平台细分…

人工智障(5)

今天kimi把我气疯了&#xff0c;你们看原对话&#xff1a; 月之暗面最近在搞什么&#xff0c;不仅算力慢&#xff0c;而且回答离谱的要死&#xff0c;难道换老板了&#xff1f;

Python爬虫——城市数据分析与市场潜能计算(Pandas库)

使用Python进行城市市场潜能分析 简介 本教程将指导您如何使用Python和Pandas库来处理城市数据&#xff0c;包括GDP、面积和城市间距离。我们将计算每个城市的市场潜能&#xff0c;这有助于了解各城市的经济影响力。 步骤 1: 准备环境 确保您的环境中安装了Python和以下库&…

Python毕业设计选题:基于Flask的医疗预约与诊断系统

开发语言&#xff1a;Python框架&#xff1a;flaskPython版本&#xff1a;python3.7.7数据库&#xff1a;mysql 5.7数据库工具&#xff1a;Navicat11开发软件&#xff1a;PyCharm 系统展示 系统首页 疾病信息 就诊信息 个人中心 管理员登录界面 管理员功能界面 用户界面 医生…

Android 图形系统之二:ViewRootImpl

ViewRootImpl简介 ViewRootImpl 是 Android UI 系统的核心类之一&#xff0c;负责将 View 层级树与窗口管理器 WindowManager 联系起来。它是Android 应用视图的根节点&#xff0c;与 WindowManager 结合&#xff0c;实现视图的绘制、事件分发、窗口更新等功能。虽然 ViewRoot…

python通过ODBC连接神通数据库

1、安装神通数据库 2、安装python 3、安装pyodbc pip3 install pyodbc-5.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 注&#xff1a;pyodbc要和python版本相对应 4、安装unixodbc 5、配置神通数据库ODBC数据源 6、示例代码如下 #!/usr/bin/python…

基于单片机的智能药箱设计

本设计主要由红外检测传感器、显示、独立按键、舵机、语音以及短信等模块组成。红外传感器模块主要对药仓中的药物数据进行采集&#xff0c;采集完毕由主控制器进行数据加工&#xff0c;之后可传送至显示模块上进行显示&#xff0c;在显示模块也可对显示时间、吃药倒计时、吃药…

【掩体计划——DFS+缩点】

题目 代码 #include <bits/stdc.h> using namespace std; const int N 1e5 10; vector<vector<int>> g; bool st[N]; int ans 1e9; bool dfs(int f, int u, int dis) {bool is 1;for (auto j : g[u]){if (j f)continue;is & dfs(u, j, dis (g[u].…

无人机点云处理算法技术解析!

一、核心技术 数据预处理&#xff1a; 数据预处理是点云处理的第一步&#xff0c;主要包括滤波、去噪、数据压缩等。滤波技术可以去除点云数据中的噪声和孤立点&#xff0c;提高数据质量。常用的滤波方法包括双边滤波、高斯滤波等。 数据压缩则用于减少数据量&#xff0c;提…

Android13 允许桌面自动旋转

一&#xff09;需求-场景 Android13 实现允许桌面自动旋转 Android13 版本开始后&#xff0c;支持屏幕自动旋转&#xff0c;优化体验和兼容性&#xff0c;适配不同屏幕 主界面可自动旋转 二&#xff09;参考资料 android framework13-launcher3【06手机旋转问题】 Launcher默…

vue+uniapp+echarts的使用(H5环境下echarts)

1.安装 npm install echarts4.9.0 --save // 带版本号 2.main.js中全局引用 // import echarts from echarts // 如果是5.0以上版本用这个 import * as echarts from echarts Vue.prototype.$echartsecharts 3.使用 <template><view id"box" style"w…

探索仓颉编程语言:官网上线,在线体验与版本下载全面启航

文章目录 每日一句正能量前言什么是仓颉编程语言仓颉编程语言的来历如何使用仓颉编程语言在线版本版本下载后记 每日一句正能量 当你被孤独感驱使着去寻找远离孤独的方法时&#xff0c;会处于一种非常可怕的状态。因为无法和自己相处的人也很难和别人相处&#xff0c;无法和别人…

【Elasticsearch】Docker安装和基本概念

1. Docker安装ES 拉取es镜像 docker pull elasticsearch:8.5.3 创建网络 docker network create oj-network 启动es docker run -d --name oj-es-dev -e "ES_JAVA_OPTS-Xms256m -Xmx256m" -e "discovery.typesingle-node" -v D:\javacode\oj-byte\depl…

基于Java Springboot环境保护生活App且微信小程序

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术&#xff1a;Html、Css、Js、Vue、Element-ui 数据库&#xff1a;MySQL 后端技术&#xff1a;Java、Spring Boot、MyBatis 三、运行环境 开发工具&#xff1a;IDEA/eclipse 微信…

[SWPUCTF 2021 新生赛]gif好像有点大

[SWPUCTF 2021 新生赛]gif好像有点大 帧解一下 找到这个二维码用软件CQR解开一下 得到flag NSSCTF{The_G1F_ls_T00_b1g} [BJDCTF 2020]base?? 给了我们base64加密的密文 用python直接解密 import base64 dict{0: J, 1: K, 2: L, 3: M, 4: N, 5: O, 6: x, 7: y, 8: U, 9: …

Unity类银河战士恶魔城学习总结(P156 Audio Settings音频设置)

【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili 教程源地址&#xff1a;https://www.udemy.com/course/2d-rpg-alexdev/ 本章节实现了音频的大小设置与保存加载 音频管理器 UI_VolumeSlider.cs 定义了 UI_VolumeSlider 类&#xff0c;用于处理与音频设置相关的…

【Java从入门到放弃 之 类加载器】

类加载器 ClassLoader 类加载器动态加载类的两种方式类加载过程双亲委派模型特点类加载器层次结构 自定义类加载器总结 类加载器 类加载器负责将Java字节码文件&#xff08;.class文件&#xff09;动态加载到内存中&#xff0c;并将其转化为JVM可以执行的类对象。它是Java运行…

华为HarmonyOS 让应用快速拥有账号能力 -- 1 华为账号一键登录

概述 华为账号一键登录是基于OAuth 2.0协议标准和OpenID Connect协议标准构建的OAuth2.0 授权登录系统&#xff0c;应用可以通过华为账号一键登录能力方便地获取华为账号用户的身份标识和手机号&#xff0c;快速建立应用内的用户体系。 优势&#xff1a; 利用系统账号的安全…