Python程序设计基础:列表与元组(二)

news2025/1/27 12:38:44

文章目录

  • 一、数值列表的生成
    • 1、通过input()函数输入创建列表
    • 2、通过list()函数转换
    • 3、列表生成式
    • 4、数值列表的几种统计计算
  • 二、元组
    • 1、元组的定义
    • 2、元组的操作
    • 3、元组作为列表元素
  • 三、转换函数
    • 1、元组和列表之间的转换
    • 2、字符串和列表之间的转换
    • 3、split()方法

一、数值列表的生成

前面介绍列表中的元素主要以字符串为主,而数值列表在日常中的应用也非常广泛,下面讲解几种常见的数值列表的创建方式。

1、通过input()函数输入创建列表

最常见的方式是通过输入设备使用input()函数输入相关数值创建数值列表,但是由于input()函数只能接收字符串,因此需要使用一个eval()函数来进行转换。
在这里插入图片描述

2、通过list()函数转换

在前面有介绍过可以使用range()函数来生成类似[1,2,3,4,5,6]这样的一组数,但是这样一组数是一个range对象,如果要将其转换成列表,则需要使用list()函数对其进行转换。
在这里插入图片描述

3、列表生成式

range()函数除了借用list()函数外,还可以和for循环相结合生成数值列表,即列表生成式,列表生成式的语法格式如下:

列表 = [循环变量表达式 for 循环变量 in range()函数]

上式中,循环变量表达式指包含了循环变量的各种运算,for 循环变量 in range()函数指定了循环变量的变化区间和方式。
在这里插入图片描述

4、数值列表的几种统计计算

针对数值列表,可以使用内置的min()、max()以及sum()函数进行求最小值、最大值以及和。
在这里插入图片描述

二、元组

元组和列表类似,也是用来存放一组相关的数据,二者的不同之处主要有以下两点:

  1. 元组使用圆括号(),列表使用方括号[]。
  2. 元组中的元素不能进行修改。

由于元组中的元素不能修改,因此列表中所有修改元素的操作均不适用于元组。

1、元组的定义

定义元组最直接的方法就是将多个元素用“,”隔开放在一对“()”中,此外不使用“()”直接用“,”隔开也可以定义元组,若定义元组时只有一个元素,在该元素末尾也要加一个“,”,否则视为单个数据。
在这里插入图片描述

2、元组的操作

元组中除了不能修改元素外,其他操作均与列表类似。

操作元组
读元素和列表一致
del命令只支持删除整个元组
len()函数和列表一致
in和not in运算和列表一致
index()方法和列表一致
count()方法和列表一致
遍历元素和列表一致
sorted()函数排序结果为列表
+运算和列表一致
*运算和列表一致
赋值和列表一致
max()函数和列表一致
min()函数和列表一致
sum()函数和列表一致

3、元组作为列表元素

列表中的元素类型是没有限制的,因此元组也可以作为列表中的元素存在。
在这里插入图片描述

三、转换函数

1、元组和列表之间的转换

元组和列表直接可以相互转换,使用tuple()函数可以将列表转换成元组,使用list()函数可以将元组转换成列表。
在这里插入图片描述

2、字符串和列表之间的转换

使用list()函数可以将字符串转换成列表,字符串中的每个元素将作为列表中的每个元素存在。
在这里插入图片描述

3、split()方法

上述使用list()函数直接将字符串转换成列表在大部分时候不符合实际需要,例如如果要对英文语句进行拆分,使用上述方法只会得到单个字母,若想得到每个英文单词,则需要利用空格符对英文语句进行拆分,而split()方法可以实现这一想法。split()方法可以根据指定的分隔符拆分字符串,并生成列表,其语法格式如下:

列表 = 字符串.split(分隔符)

其中分隔符如果缺省的话则默认按照空格对字符串进行拆分。
在这里插入图片描述

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

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

相关文章

深度学习模型:Pytorch搭建ResNet、DenseNet网络,完成一维数据分类任务

2023.7.17 DenseNet和ResNet都是深度学习中常用的网络结构,它们各有优缺点。 DenseNet的优点是可以充分利用网络中的信息,因为每个层都可以接收来自前面所有层的信息。这种密集连接的结构可以提高网络的准确性,减少过拟合的风险。此外&…

教你一招,动态规划思想

动态规划 什么是动态规划? 动态规划也是算法设计的一种方法/思想。它将一个问题分解为相互重叠的子问题,通过反复求解子问题,来解决原来的问题。 基础案例 场景一 斐波那契数列 当前数等于前面两个数的和。 定义子问题:f(n)…

Python异步网络编程框架Twisted使用方法

Twisted概念 Twisted是一个Python异步网络编程框架,它可以帮助我们开发高性能的网络应用程序。它提供了一些基本概念,如reactor、protocol、transport和factory等,用于构建高效的网络应用程序。 优点: 异步并发处理&#xff1a…

Ceph集群

目录 一、存储概述 1.单机存储设备 1.1 DAS 1.2 NAS 1.3 SAN 2. 单机存储的问题 3. 商业存储解决方案 4.分布式存储(软件定义的存储 SDS) 4.1 分布式存储的类型 二、Ceph简介 1.Ceph 优势 2. Ceph 架构 2.1 RADOS 基础存储系统 2.2 LIBRADOS…

Arch - 多线程设计架构模式

文章目录 概述细节 概述 多线程设计架构模式是一种通过合理地使用线程来提高系统性能和响应能力的设计模式。以下是一些常见的多线程设计架构模式: 线程池模式:通过预先创建一组线程,将任务提交到线程池中执行,避免了线程的频繁创…

Perforce Helix Core新版本推出资源压力感知功能,提升服务器可用性,助力大规模开发

您的版本控制系统帮助团队进行主动监控吗? Perforce Helix Core的客户经常在不同维度上测试规模和性能的极限。其中一些维度包括文件数量、文件大小、用户数和并发事务数量。随着这些维度的压力增加,服务器资源(如内存和CPU)通常…

时刻领先丨PingCAP 用户峰会 2023 圆满收官

7 月 13 日,PingCAP 用户峰会 2023 在北京西南华邑酒店成功举办。 大会有哪些精彩看点,快跟小编来看看吧! 提升中国开源数据库在国际市场的影响力和竞争力 倪光南 中国工程院院士 在全球数字科技创新的浪潮中,数据库作为核心数…

EVO 工具常见使用记录

计算ATE 第一种 evo_ape tum GT_robot_0.txt robot0_estimated.txt --plot --plot_mode xyz --align_origin第二种 evo_ape tum GT_robot_0.txt robot0_estimated.txt --plot --plot_mode xyz -a参数解析 GT pose 跟 estimated pose 文件的相对顺序。先 GT pose 的文件…

Boojum:zkSync的高性能去中心化STARK证明系统

1. 引言 2023年7月17日zkSync官方twitter Say hello to Boojum宣称在不regenesis的情况下,将zkSync Era迁移至Boojum证明系统。 Boojum为STARK证明系统(PlonkFRI),开源代码见: https://github.com/matter-labs/era-…

【kubernetes系列】Kubernetes之调度器和调度过程

Kubernetes之调度器和调度过程 概述 当用户请求向API server创建新的Pod时,API server检查授权、权限等没有任何问题的话,他会把这个请求交由Scheduler,由Scheduler检查所有符合该Pod要求的列表,开始执行Pod调度逻辑&#xff0c…

mongdb基本操作

如果要查看刚刚创建的数据库 创建集合class 将数据插入 进行查找练习 查看班级所有人信息 db.class.find()查看班级中年龄为10岁的学生信息 db.class.find({age:10})查看年龄大于10岁的学生信息 用到范围条件查询 db.class.find({age:{$gt:10}})查看年龄在 4—8岁之间的学…

Jetpack入门:DataBinding

目录 一、DataBinding简介 设置 Data Binding 数据绑定表达式 双向绑定 二、例子 例1:DataBinding实现文本绑定和点击事件 MainActivity : CountStart : Food: OnClickListener : activity_main: build.gradle: 运行结果…

用vscode远程连接Linux服务器后,如何创建自己的账号

1. 打开终端(Terminal)窗口 2. 在终端中创建新的用户账号 (假设您要创建的用户名为 “newuser”),在命令执行期间,需要提供新用户的密码。按照提示进行操作。 先输入登录的管理员账号密码。 再输入创建的…

2.2 Entry Text输入,文本框

2.2 Entry & Text输入,文本框 窗口主体框架 每一个tkinter应用的主体框架都包含以下几部分: 主窗口: window,及主窗口的一些基本属性(标题、大小)让窗口活起来:window.mainloop() import tkinter as…

热插拔-udev机制

一、什么是udev? udev是一种设备管理工具,以“守护进程”的形式运行,通过侦听内核发出来的uevent来管理/dev目录下的设备文件。它能够根据系统中的硬件设备的状态动态更新设备文件,包括设备文件的创建,删除等。使用ud…

线程池学习(二)execute() 和 submit() 的区别

转载&#xff1a;线程池 线程提交的两种方式 ExecutorService poll3 Executors.newCachedThreadPool();for (int i 0; i < 2; i) {poll3.execute(new TargetTask());poll3.submit(new TargetTask());}execute方法 void execute(Runnable command): Executor接口中的方法s…

【3-D深度学习:肺肿瘤分割】创建和训练 V-Net 神经网络,并从 3D 医学图像中对肺肿瘤进行语义分割研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Dubbo框架保姆级教学[手把手教会你]

文章目录 Dubbo框架Dubbo(RPC)概括Dubbo支持的协议Dubbo支持的注册中心dubbo的调用结构 配置服务项目- 依赖- application-local.yml配置类注解- provider(服务提供者): 远程调用的被调用的服务实例- consumer(服务消费者): 远程调用的调用发起的服务实例 远程调用原理 Dubbo负…

34.Vue自定义指令-对象式

33.Vue自定义指令&#xff08;函数式&#xff09;_vue自定义函数_未来音律的博客-CSDN博客还有一种就是&#xff0c;我们去定义指令的时候&#xff0c;也不要去写v-前缀&#xff0c;定义指令的时候需要给指令起名字&#xff0c;那么这个指令的名字直接就叫big,而用的时候还是要…

基于linux下的高并发服务器开发(第二章)- 2.7 进程退出、孤儿进程、僵尸进程

01 / 进程退出 exit.c /*#include <stdlib.h>void exit(int status);#include <unistd.h>void _exit(int status);status参数&#xff1a;是进程退出时的一个状态信息。父进程回收子进程资源的时候可以获取到。 */ #include <stdio.h> #include <stdlib.…