Python(四十七)列表对象的创建

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。
☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无论你是学生、职场人士还是对编程感兴趣的爱好者,都能从中受益。跟着我的学习笔记一起学习python吧。
🌙专栏目标:本专栏的目标是帮助我自己记忆、方便回顾所学知识以及帮助其他想学习python的小伙伴掌握Python编程语言的基本概念和技巧,并逐步提高我们的编程能力。通过这个专栏,我们将学会如何编写Python代码,理解各种数据类型、控制结构和函数,掌握常用的Python模块和库,以及应用Python解决实际问题。

⭐️ 专栏主要内容: 主要学习python的开发环境搭建;Python的基础知识,包括变量、数据类型、条件语句和循环等;python的数据结构和算法;python的函数和模块;python的文件处理等。
🌴 专栏说明 :如果文章知识点有错误的地方,欢迎大家随时在文章下面评论,我会第一时间改正。让我们一起学习,一起进步。
💑专栏主页:从零开始的Python入门之路

在这里插入图片描述

文章目录

    • 引言
    • 列表的创建方式
      • 使用方括号创建列表
      • 使用list()函数创建列表
      • 使用列表解析创建列表
    • 创建列表对象的实例
    • 总结

引言

列表(List)是Python中常用的数据结构之一,它可以存储多个元素,并且可以根据需要进行动态调整。在本小节中,我将详细介绍列表的创建方式,并通过示例代码演示每种方式的使用方法和运行结果。

列表的创建方式

Python提供了多种创建列表的方式,下面将介绍三种常用的方式:使用方括号创建列表、使用list()函数创建列表以及使用列表解析创建列表。

使用方括号创建列表

使用方括号([])是创建列表最简单的方式之一,我们可以直接在方括号中添加元素,并用逗号分隔。下面是一个使用方括号创建列表的示例代码:

# 创建一个包含整数的列表
numbers = [1, 2, 3, 4, 5]# 创建一个包含字符串的列表
fruits = ['apple', 'banana', 'orange']# 创建一个包含不同类型元素的列表
mixed = [1, 'apple', True, 3.14]# 创建一个空列表
empty_list = []

在上面的示例代码中,我们分别创建了包含整数、字符串、不同类型元素以及空列表的示例。在方括号中,我们可以添加任意类型的元素,并且元素之间用逗号分隔。

运行结果:

numbers: [1, 2, 3, 4, 5]
fruits: ['apple', 'banana', 'orange']
mixed: [1, 'apple', True, 3.14]
empty_list: []

使用方括号创建列表非常简单直观,适用于已知元素的情况。

使用list()函数创建列表

除了使用方括号,我们还可以使用内置的list()函数来创建列表。list()函数可以接受一个可迭代对象作为参数,并将其转换为列表。下面是一个使用list()函数创建列表的示例代码:

# 创建一个包含字符串的列表
fruits = list('apple')# 创建一个包含范围内整数的列表
numbers = list(range(1, 6))# 创建一个包含元组的列表
pairs = list((1, 2), (3, 4), (5, 6))# 创建一个空列表
empty_list = list()

在上面的示例代码中,我们使用list()函数分别创建了包含字符串、范围内整数和元组的列表,同时也创建了一个空列表。list()函数可以将字符串、元组、集合、字典等可迭代对象转换为列表。

运行结果:

fruits: ['a', 'p', 'p', 'l', 'e']
numbers: [1, 2, 3, 4, 5]
pairs: [(1, 2), (3, 4), (5, 6)]
empty_list: []

使用list()函数创建列表可以方便地将其他可迭代对象转换为列表。

使用列表解析创建列表

列表解析(List Comprehension)是一种简洁而强大的方式,可以快速创建列表,并且可以在创建过程中进行条件筛选和元素变换。下面是一个使用列表解析创建列表的示例代码:

# 创建一个包含范围内偶数的列表
even_numbers = [x for x in range(1, 11) if x % 2 == 0]# 创建一个包含字符串的列表,将字符串转换为大写
uppercase_fruits = [fruit.upper() for fruit in ['apple', 'banana', 'orange']]# 创建一个包含元组的列表,将元组中的元素相加
sum_pairs = [(x, y, x + y) for x in range(1, 4) for y in range(4, 7)]# 创建一个空列表
empty_list = []

在上面的示例代码中,我们使用列表解析分别创建了包含范围内偶数、字符串转换为大写以及元组元素相加的列表,同时也创建了一个空列表。列表解析的语法为[表达式 for 变量 in 可迭代对象 if 条件],可以根据需要灵活地进行元素筛选和变换。

运行结果:

even_numbers: [2, 4, 6, 8, 10]
uppercase_fruits: ['APPLE', 'BANANA', 'ORANGE']
sum_pairs: [(1, 4, 5), (1, 5, 6), (1, 6, 7), (2, 4, 6), (2, 5, 7), (2, 6, 8), (3, 4, 7), (3, 5, 8), (3, 6, 9)]
empty_list: []

使用列表解析可以简洁地创建满足条件的列表,并且可以进行元素的变换和筛选。

创建列表对象的实例

在实际应用中,我们经常需要创建列表对象来存储和处理数据。下面是一个创建列表对象的实例,用于存储学生的成绩,并计算平均分:

# 创建一个包含学生成绩的列表
scores = [85, 92, 78, 90, 88]# 计算平均分
average = sum(scores) / len(scores)# 打印结果
print("学生成绩:", scores)
print("平均分:", average)

运行结果:

学生成绩: [85, 92, 78, 90, 88]
平均分: 86.6

在上面的示例代码中,我们创建了一个包含学生成绩的列表,并使用sum()函数计算了成绩的总和,然后除以列表的长度得到平均分。

总结

本小节详细介绍了Python列表对象的创建方式,包括使用方括号、list()函数和列表解析。使用方括号创建列表简单直观,适用于已知元素的情况;list()函数可以将其他可迭代对象转换为列表;列表解析提供了一种简洁而强大的方式,可以快速创建满足条件的列表。在实际应用中,我们可以根据需要选择合适的方式来创建列表对象,并进行相应的数据处理和操作。

参考链接:

  • Python列表文档
  • Python列表解析教程

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

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

相关文章

“深入理解Spring Boot:构建高效、可扩展的Java应用程序“

标题:深入理解Spring Boot:构建高效、可扩展的Java应用程序 摘要:Spring Boot是一个用于构建Java应用程序的开源框架,它提供了一种简单且高效的方式来创建独立的、生产级别的应用程序。本文将深入探讨Spring Boot的核心概念和特性…

Git工作中常用命令

模拟一个git完整命令流程 有一个名为 example.txt 的文本文件 Hello, this is some text.1、做一些修改并查看文件的差异: # 修改 example.txt 文件 echo "Hello, this is some updated text." > example.txt查看文件的差异 git diffgit diff 命令…

【【51单片机红外遥控小风车】】

51单片机红外遥控小风车 今天结束了51单片机的学习,明天开始学习stm32 我是学习江科大的视频一步一步完成的 ,他讲的非常好,非常好 特别通俗易懂 学习复刻他的作品我也自己创作了一些 但是现在暂时脱离这块板子了 以后可能会更新一个应用51单…

ffmpeg最简单方式支持nvidia硬编解码

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、nvidia硬编解码是什么?二、使用步骤1.安装2.确认1.硬件解码器2.硬件编码器 3.测试 总结 前言 因为工作内容的需要,之前写过一篇文章…

使用SVM模型完成分类任务

SVM,即支持向量机(Support Vector Machine),是一种常见的机器学习算法,用于分类和回归分析。SVM的基本思想是将数据集映射到高维空间中,在该空间中找到一个最优的超平面,将不同类别的数据点分开…

Jsp+Ssh+Mysql实现的简单的企业物资信息管理系统项目源码附带视频指导运行教程

由jspssh(springstruts2mysql)实现的企业物资信息管理系统,系统功能比较简单,实现了基本的管理员、操作员等用户管理、物品分类管理、物品管理、入库管理、出库管理、库存预警、客户管理、供应商管理等基本功能需要的可以联系我分…

接口参数设计原则

1. 不能太动态. 不相信客户端的原则 例如传递 filterFields , 推送一个表的某些字段给上游. 2. 可以服务端提供一些封装. 这个封装可以是写死的组合, 也可以是后端配置的. 最好的是 代码里的领域类bean 1,1对应一个名称. 可以是 classReference. 运营态有很多字段是给用户看的…

SpringMVC路径匹配

SpringMVC路径匹配 SpringMVC支持Ant风格的路径 Ant是Apache下的一个构建(编译、测试、部署等)工具。即Ant风格源于Ant这个构建工具。 关于如何配置SpringMVC的各种配置文件和其中的注解使用可以参考 种类 1、?:表示任意的单个字符 controller RequestMapping…

[JavaWeb]SQL介绍-DDL语句

SQL介绍-DDL语句 一.SQL简介1.简介2.SQL通用语法3.SQL语言的分类 二.DDL-操作数据库与表1.DDL操作数据库2.DDL操作表①.查询表(Retrieve)②.创建表(Create)③.修改表(Update)④.删除表(Delete) 一.SQL简介 1.简介 SQL: Structured Query Language–结构化查询语言用来操作关系…

prometheus和cAdvisor组合

文章目录 docker内部署PromethuesPrometheuscAdvisorPrometheus和cAdvisor关系配置 docker内部署Promethues Prometheus Prometheus是一个开源的系统监控和报警工具,由SoundCloud开发并在2012年捐赠给了Cloud Native Computing Foundation (CNCF)。它被广泛用于监…

打卡一个力扣题目

目录 一、问题 二、解题办法一 三、解题方法二 四、对比分析 关于 ARTS 的释义 —— 每周完成一个 ARTS: ● Algorithm: 每周至少做一个 LeetCode 的算法题 ● Review: 阅读并点评至少一篇英文技术文章 ● Tips: 学习至少一个技术技巧 ● Share: 分享一篇有观点…

视频转化为图片或灰度视频

1.视频转化为图片 import cv2video_pathr"D:\Dataset\video/7.mp4" capturecv2.VideoCapture(video_path) # print(capture.get(5))if capture.isOpened():ret,imgcapture.read()index0while ret:if index%200:imgidr"D:\Dataset\image/6/""%07d&quo…

dataTable转成对象、json、list

datatable转换成list集合 public static T TableToEntity<T>(DataTable dt, int rowindex 0, bool isStoreDB true){Type type typeof(T);T entity Activator.CreateInstance<T>();if (dt null){return entity;}DataRow row dt.Rows[rowindex];PropertyInfo…

List中交集的使用

前言 新增了一个需求&#xff0c;需要将所有药品和对应数量库存的药房查询出来&#xff0c;要求&#xff1a;‘所有药品该药房都要有&#xff0c;并且库存大于购药数量’&#xff1b; 这就得考虑一个问题&#xff0c;有的药房有该药品&#xff0c;有的药房没有该药品&#xf…

前端常用的条件限制方法小笔记

手机号的正则表达式(以1开头的11位数字) function checkPhone(){ var phone document.getElementById(phone).value;if(!(/^1[3456789]\d{9}$/.test(phone))){ alert("手机号码有误&#xff0c;请重填"); return false; } }限制输入大于0且最小值要小于最大值 c…

php项目内存飚高处理与优化

公司服务器最近内存占用超过阈值一直报警 经过排查,内存占用很多&#xff0c;剩余很少 free -m 排查代码无太多冗余和缓存 最后和运维一起排查&#xff0c;发现宝塔安装后带的gitlab的进程很吃内存&#xff0c;赶紧停用&#xff0c;并卸载无用的软件 最后内存降下来了

16.Netty源码之ChannelPipeline

highlight: arduino-light 服务编排层:ChannelPipeline协调ChannelHandlerHandler EventLoop可以说是 Netty 的调度中心&#xff0c;负责监听多种事件类型&#xff1a;I/O 事件、信号事件、定时事件等&#xff0c;然而实际的业务处理逻辑则是由 ChannelPipeline 中所定义的 Cha…

Vue-Router基本使用

1 安装&#xff1a; vue2项目要安装vue-router3版本 npm i vue-router3 2 src下创建router目录&#xff0c;router文件夹下创建index.js 在vue.config.js中 配置src路径别名 3 在main.js中引入 4 在app.vue中配置 5 即可看到内容

Elasticsearch 常用 HTTP 接口

本文记录工作中常用的关于 Elasticsearch 的 HTTP 接口&#xff0c;以作备用&#xff0c;读者也可以参考&#xff0c;会持续补充更新。开发环境基于 Elasticsearch v5.6.8、v1.7.5、v2.x。 集群状态 集群信息 1 2 3 4 5 6 7http://localhost:9200/_cluster/stats?pretty http…

okhttp原理分析

工程目录图 请点击下面工程名称&#xff0c;跳转到代码的仓库页面&#xff0c;将工程 下载下来 Demo Code 里有详细的注释 01okhttp module里 包含的设计模式&#xff1a;建造者设计模式、责任链设计模式 CustomInject 演示自定义注解 代码&#xff1a;okhttp原理分析、Andro…