Python--List列表

list列表⭐⭐

1高级数据类型


Python中的数据类型可以分为:数字型(基本数据类型)和非数字型(高级数据类型)
●数字型包含:整型int、浮点型float、布尔型bool、复数型complex
●非数字型包含:字符串str、列表list、元组tuple、集合set、字典dict

高级数据类型的特点
●都是一个序列 sequence,也可以理解为 容器
●获取某一个元素 数据集[index] (集合除外,无序的)
●通过for循环遍历
●都可以计算长度、最大/最小值、比较、删除
●连接 + 和 重复 *
●切片,获取容器一部分

2. 列表

列表 是 Python 中使用 最频繁 的数据类型,专门用于存储 一串 数据,存储的数据 称为 元素
列表的类型是:list

2.1. 列表的定义

列表用[]定义,元素之间用逗号,分隔

namesList = ['林青霞','张曼玉','胡慧中']

2.2. 访问列表的元素

查找列表中元素是按照列表索引进行查找的。索引 就是元素在 列表 中的位置编号,又可以被称为 下标
索引是从0开始的,例如:第一个元素,索引就为0

namesList = ['林青霞','张曼玉','胡慧中']
# 获取第二个人
name = namesList[1]
print(name)

2.3. 遍历列表

可以通过for遍历列表中的元素

namesList = ['林青霞','张曼玉','胡慧中']
# 遍历列表
for name in namesList:print(name)

2.4. 列表的操作

列表可以增加新的元素,删除元素,修改元素。还可以对列表进行排序等操作

增加元素

通过append增加新元素

namesList = ['林青霞','张曼玉','胡慧中']
# 增加高圆圆
namesList.append('高圆圆')
print(namesList)

结果:

['林青霞', '张曼玉', '胡慧中', '高圆圆']

删除元素

通过pop删除指定索引元素

namesList = ['林青霞','张曼玉','胡慧中']
# 删除张曼玉
namesList.pop(2)
print(namesList)
# ['林青霞','张曼玉']

通过remove方法删除指定内容元素

namesList = ['林青霞','张曼玉','胡慧中']
# 删除张曼玉
namesList.remove('张曼玉')
print(namesList)

结果:

['林青霞', '胡慧中']

修改元素

通过 列表[索引]=新数据 修改元素

namesList = ['林青霞','张曼玉','胡慧中']
# 将张曼玉修改成高圆圆
namesList[1] = '高圆圆'
print(namesList)

结果:

['林青霞', '高圆圆', '胡慧中']

查询

通过 列表[索引] 获取元素

namesList = ['林青霞','张曼玉','胡慧中']
# 查找第二个元素
ele = namesList[1]
print(ele)

结果:

张曼玉

通过 列表.index(元素) 查找元素的索引

namesList = ['林青霞','张曼玉','胡慧中']
# 查找元素张曼玉的索引
index = namesList.index('张曼玉')
print(index)

结果:

1

2.5. 列表的排序

通过 列表.sort() 对列表进行升序排序

ageList = [90,10,30,20,50,70]
# 从小到大 升序
ageList.sort()
print(ageList)

结果:

[10, 20, 30, 50, 70, 90]

通过 列表.sort(reverse=True) 对列表进行降序排序

ageList = [90,10,30,20,50,70]
# 从大到小 降序排序
ageList.sort(reverse=True)
print(ageList)

结果:

[90, 70, 50, 30, 20, 10]

通过 列表.reverse() 对列表进行反转

ageList = [90,10,30,20,50,70]
# reverse 将列表进行反转
ageList.reverse()
print(ageList)

结果:

[70, 50, 20, 30, 10, 90]

2.6. 列表的嵌套

列表中的元素可以是列表类型的数据,就称为列表的嵌套

嵌套列表的定义:

students = [['林青霞','狄龙','郑少秋'],['张曼玉','梁朝伟']
]

查询元素

# 查询郑少秋
student = students[0][2]

修改元素

# 修改张曼玉位高圆圆
students[1][0] = '高圆圆'

3. 练习-办公室分配

需求

一个学校,有3个办公室,现在有8位老师等待工位的分配

['袁腾飞', '罗永浩', '俞敏洪', '李永乐', '王芳芳', '马云', '李彦宏', '马化腾']

请编写程序:

  1. 完成随机的分配
  2. 打印办公室信息 (每个办公室中的人数,及分别是谁)

分析

1. 定义3个办公室的列表:列表嵌套
2. 声明8位老师到列表中
3. 遍历老师的列表
4. 随机存放到办公室中

提示:获取随机数

import random
index = random.randint(0, 2) # 获取0、1、2中的任意一个

大家可以在评论区讨论这个练习

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

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

相关文章

整合SSM框架笔记

整合SSM框架笔记 Spring5 Spring MVC MyBatis Druid MySQL Thymeleaf 感谢尚硅谷课程:B站课程 前言 单Spring框架时,是Java工程。 Spring与Spring MVC可以共用一个配置文件,也可以不共用一个,推荐不共用一个。 Spring与Sp…

Quartus 联合 ModelSim 仿真 IP 核(RAM)

文章目录 ModelSim 路径设置创建 RAM进行仿真 本文主要介绍如何在包含 IP 核的 Quartus 项目中使用 Modelsim 进行仿真,本文基于 IP 核 RAM: 2-PORT,其他 IP 核类似。 ModelSim 路径设置 点击 Tools->Options 点击 EDA Tool Options,设置…

string OJ题

下面分享一下string做题心得 1. 明白字符串中存储的数字为0 8 9与0 8 9 完全不同,字符0其实在串中存储的是48,要有意识的转化。字符串中如果存数字8,意味着存了BS(退格) 例如1: 算出结果为5,存…

Selenium 自动化测试工具<2>(Selenium 常用API的使用方法)

文章目录 浏览器操作浏览器最大化设置浏览器的大小浏览器的前进和后退操作浏览器滚动条 键盘事件单个按键用法键盘组合键用法 鼠标事件不同窗口搜索定位一组元素定位多层框架下拉框定位alert、confirm、prompt 的处理上传文件操作自动截屏 继上一篇文章对 Selenium API 的使用&…

RT-DRET在实时目标检测上超越YOLO8

导读 目标检测作为计算机视觉的核心任务之一,其研究已经从基于CNN的架构发展到基于Transformer的架构,如DETR,后者通过简化流程实现端到端检测,消除了手工设计的组件。尽管如此,DETR的高计算成本限制了其在实时目标检测…

搭建属于自己的 Git 仓库:GitLab

搭建属于自己的 Git 仓库:使用 GitLab 文章目录 搭建属于自己的 Git 仓库:使用 GitLab什么是 GitLab?准备工作安装 Docker使用Docker Compose 快速构建GitLab1、从docker compose快速搭建GitLab2、部署到服务器并访问3、浏览器访问 在现代软件…

【数据结构】------C语言实现二叉树

作者主页:作者主页 数据结构专栏:数据结构 创作时间 :2024年5月20日 一、二叉树的定义 二叉树(Binary Tree) 是由n个结点构成的有限集(n≥0),n0时为空树,n>0时为非空树。 对于非空树: 有且仅有一个根…

腾讯Java社招面试题真题,最新面试题

Java中synchronized和ReentrantLock有什么区别? 1、锁的实现方式不同: synchronized是JVM层面的锁,主要依赖于监视器对象(monitor)实现。ReentrantLock是JDK层面的锁,通过Java代码实现,提供了更…

语雀——云知识库/笔记

对于日常进行学习/创作或是记录学习、工作内容与心得的群体来说,能够及时同步的云笔记应用有着广泛的应用场景。近期,我也探索了许多款不同的软件应用,今天来分享一款很有特点的应用——语雀。 语雀,为每一个人提供优秀的文档和知…

1.6 什么是程序-编译与调试

目录 1 程序的作用 2 新建项目及编译运行 2.1 新建项目 2.2 HelloWorld 程序说明 2.3 printf 打印输出 2.4 注释 3 程序的编译过程及项目位置 4 断点及调试窗口设置 5 学习C语言后的境界 1 程序的作用 如下图所示,我们编写了一个可以做加法的程序&#xf…

vue3 vite项目配置了proxy代理情况下查看真实的接口调用地址

vite配置了proxy代理情况下如何查看真实的接口调用地址? 使用vite进行代理 在vite.config.ts配置了代理 在浏览器查看请求头和响应头发现只有代理前的url,没有显示代理后的路径 然后发现一个bypass函数,但是此函数只能修改res响应头的数据&#xff0…

Dockerfile文件详细介绍

前言 Dockerfile是一个文本文件,包含了用于构建Docker镜像的所有命令和说明。它定义了容器的运行环境、依赖以及启动方式,是创建Docker镜像的核心部分。 由于制作镜像的过程中,需要逐层处理和打包,比较复杂,所以Docke…

实战复盘:内网环境渗透ms-SQL数据库

渗透环境:如下图所示,web服务器、ms-SQL服务器、PC客户端在同一个网络中,彼此之间,没有路由器或防火墙的隔离,这是一种危险的网络结构,入侵ms-SQL服务器,非常容易。(实战中&#xff…

整理了10个靠谱且热门的赚钱软件,适合普通人长期做的赚钱副业

作为一名普通的上班族,我们每天都在辛勤工作,但工资的增长速度却如同蜗牛般缓慢。不过,别担心,信息时代总是带给我们无尽的惊喜!今天,我将为大家推荐一些赚钱的宝藏软件,让你在闲暇之余轻松实现…

IEDA常用快捷键(后续更新ing)

1. 快速生成语句 1.快速生成main()方法 psvm或者main回车 2.快速生成输出语句 sout,回车 3.快速生成for循环 fori或者itar,回车 2.快捷键 含义操作查找文本CtrlF替换文本CtrlR单行注释Ctrl/多行注释CtrlShift/格式化CtrlAltL复制当前内容至下一行CtrlD补全代码Alt/快速生成…

C# 机构仿真实例

1、实现连杆带动滑块运动 一个连杆旋转带动另一个连杆,另一个连杆拖动滑块,点击“开始”按钮开始运动,再点击按钮,则停止运动。 2、实现程序 #region 机构仿真Image image null;Timer timer new Timer();int width 0;int heig…

一千题,No.0027(Phone Desktop)

描述 Little Rosie has a phone with a desktop (or launcher, as it is also called). The desktop can consist of several screens. Each screen is represented as a grid of size 53, i.e., five rows and three columns. There are x applications with an icon size o…

【网络安全】社会工程学攻击与防范

一、社会工程学概述 1、社会工程学的定义 通过利用人们的心理弱点、本能反应、好奇心、信任、贪婪等一些心理陷阱进行的诸如欺骗、伤害、信息盗取、利益谋取等对社会及人类带来危害的行为或方法。 当网络恶意攻击者无法通过纯粹的计算机技术达到目的时,高超的情商…

9.Redis之list类型

list相当于链表、数据表 1.list类型基本介绍 列表中的元素是有序的"有序"的含义,要根据上下文区分~~有的时候,谈到有序,指的是"升序","降序”有的时候,谈到的有序,指的是, 顺序很关键~~如果把元素位置颠倒,顺序调换.此时得到的新的 List 和之前的 Li…

新闻稿海外媒体投稿,除了美联社发稿(AP)和彭博社宣发(Bloomberg),还有哪些优质的国外媒体平台可以选择

发布高质量的新闻稿到海外媒体,除了美联社发稿(AP)和彭博社发稿(Bloomberg),还有许多其他优质的媒体平台可以选择。以下是一些受欢迎和高效的海外媒体发布平台: 路透社 (Reuters) 路透社是全球最…