Python数据容器通用操作

通用操作

    • 1.数据容器可以从以下视角进行简单的分类
    • 2.数据容器特点对比
    • 3.数据容器的通用操作
    • 4.功能总览
    • 5.字符串大小比较

1.数据容器可以从以下视角进行简单的分类

  • 是否支持下标索引
    • 支持:列表、元组、字符串 --序列类型
    • 不支持:集合、字典 --非序列类型
  • 是否支持重复元素
    • 支持:列表、元组、字符串 --序列类型
    • 不支持:集合、字典 --非序列类型
  • 是否可以修改
    • 支持:列表、结合、字典
    • 不支持:元组、字符串

2.数据容器特点对比

列表元组字符串集合字典
元素数量支持多个支持多个支持多个支持多个支持多个
元素类型任意任意仅字符任意key:value
下标索引支持支持支持不支持不支持
重复元素支持支持支持不支持不支持
可修改性支持不支持不支持支持支持
数据有序
使用场景可修改、可重复的一批数据记录场景不可修改、可重复的一批数据记录场景一串字符的记录场景不可重复的数据记录场景以Key检索Value的数据记录场景

3.数据容器的通用操作

  • 遍历
    • 5类数据容器都支持for循环遍历
    • 列表、元组、字符串支持while循环操作;集合、字典不支持(不支持下标索引)
  • 通用统计功能
    • len(容器)统计容器元素个数

    • max(容器)统计容器最大元素

    • min(容器)统计容器最小元素

# 统计元素个数
my_list = [1,2,3]
my_tuple = (1,2,3,4,5)
my_str = "itheima"
print(len(my_list)) # 结果 3
print(len(my_tuple)) # 结果 5
print(len(my_str)) # 结果 7

# 最大元素
my_list = [1,2,3]
my_tuple = (1,2,3,4,5)
my_str = "itheima"
print(max(my_list)) # 结果 3
print(max(my_tuple)) # 结果 5
print(max(my_str)) # 结果 t

# 最小元素
my_list = [1,2,3]
my_tuple = (1,2,3,4,5)
my_str = "itheima"
print(min(my_list)) # 结果 1
print(min(my_tuple)) # 结果 1
print(min(my_str)) # 结果 a
  • 通用转换功能
    • list(容器) 将给定容器转换为列表
    • str(容器) 将给定容器转换为字符串
    • tuple(容器) 将给定容器转换为元组
    • set(容器) 将给定容器转换为集合
  • 容器通用排序功能
    • sorted(容器) 正序 sorted(容器,[reverse=True])倒序
    • 注意:排序后将会得到列表(list)对象

4.功能总览

功能描述
通用for循环遍历容器,字典是遍历key
max()容器内最大元素
min()容器内最小元素
len()容器内元素个数
list()转换为列表
tuple()转换为元组
str()转换为字符串
set()转换为集合
sorted(序列, [reverse=True])排序,reverse=True表示降序得到一个排好序的列表

5.字符串大小比较

在程序中,字符串所用的字符如:

  • 大小写英文单词
  • 数字
  • 特殊符号(!、\、|、@、#)

都有其对应的ASCII码表值
在这里插入图片描述
字符串比较
字符串是按位比较,也就是一位位进行对比,只要有一位大,name整体就大。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C++干货铺】解密vector底层逻辑

个人主页点击直达:小白不是程序媛 C系列专栏:C干货铺 代码仓库:Gitee 目录 vector介绍 vector的使用 vector的定义和使用 vector的空间增长问题 vector的增删查改 解密vector及模拟实现 成员变量 成员函数 构造函数 拷贝构造函数…

分类预测 | Matlab实现PSO-LSTM-Attention粒子群算法优化长短期记忆神经网络融合注意力机制多特征分类预测

分类预测 | Matlab实现PSO-LSTM-Attention粒子群算法优化长短期记忆神经网络融合注意力机制多特征分类预测 目录 分类预测 | Matlab实现PSO-LSTM-Attention粒子群算法优化长短期记忆神经网络融合注意力机制多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1…

飞书开发学习笔记(七)-添加机器人及发送webhook消息

飞书开发学习笔记(七)-添加机器人及发送webhook消息 一.添加飞书机器人 1.1 添加飞书机器人过程 在群的右上角点击折叠按键…选择 设置 群机器人中选择 添加机器人 选择自定义机器人,通过webhook发送消息 弹出的信息中有webhook地址,选择复制。 安…

【Linux专题】SFTP 用户配置 ChrootDirectory

【赠送】IT技术视频教程,白拿不谢!思科、华为、红帽、数据库、云计算等等https://xmws-it.blog.csdn.net/article/details/117297837?spm1001.2014.3001.5502 红帽认证 认证课程介绍:红帽RHCE9.0学什么内容,新版有什么变化-CSDN…

任正非说:10%的特殊场景就像牛在路上,谁也不知道它会在哪拉屎

你好!这是华研荟【任正非说】系列的第40篇文章,让我们聆听任正非先生的真知灼见,学习华为的管理思想和管理理念。 一、我们要建立核心生产能力,否则我们对供应链理解不深,供应链不能打通。我们之所以管道系统做得好&am…

修改树莓派4b密码

修改树莓派4b密码,vnc viewer远程连接树莓派时忘记了密码,修改为新密码进行远程连接 sudo passwd pi 其中pi为所要修改密码的用户

Java 设计模式——中介者模式

目录 1.概述2.结构3.案例实现3.1.抽象中介类3.2.抽象同事类3.3.具体同事类3.4.具体中介类3.5.测试 4.优缺点5.使用场景 1.概述 (1)一般来说,同事类之间的关系是比较复杂的,多个同事类之间互相关联时,他们之间的关系会…

IDEA这样配置Maven:让你一遍就能学会!

一、安装Maven环境 1.1 下载并安装Maven Maven官网:http://maven.apache.org/download.cgi 建议放在非系统盘目录下,可在根目录新建(D:/maven)目录用于存放Maven,或者如图,路径中不要有中文。 1.2 配置M…

AIGC实战——变分自编码器(Variational Autoencoder, VAE)

AIGC实战——变分自编码器 0. 前言1. 变分自编码器1.1 基本原理1.2 编码器 2. 构建VAE编码器2.1 Sampling 层2.2 编码器2.3 损失函数2.4 训练变分自编码器 3. 变分自编码器分析小结系列链接 0. 前言 我们已经学习了如何实现自编码器,并了解了自编码器无法在潜空间中…

轻量封装WebGPU渲染系统示例<33>- 单精度浮点纹理(源码)

在WebGPU中创建纹理使用纹理很方便,只是js中只有Float32Array而默认不支持Float16Array,所以略微费点事。不过网上的大神多的是,摇摇小手就能获得解决方案。 废话多了容易挨胖揍,看代码。 js中float16单精度float数值转换: // …

[C/C++] 数据结构 链表OJ题:相交链表(寻找两个链表的相交起始结点)

题目描述: 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返…

JSP 购物商城系统eclipse定制开发mysql数据库BS模式java编程servlet

一、源码特点 java 购物商城系统是一套完善的web设计系统 系统采用serlvetdaobean 模式开发,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模 式开发。开发环境为TOMCAT7.0,eclipse开发,数…

CentOS停更在即,国内厂商该如何应对?KeyarchOS X2Keyarch 迁移体验

一、CentOS 停更危机二、关于浪潮信息KeyarchOS三、浪潮信息 KeyarchOS License 应用迁移实践第一步:迁移前验证第二步:迁移第三步:迁移后验证 四、写在最后 一、CentOS 停更危机 自 1993 年开始,红帽 Linux 已经陪伴开发者们走过…

荧光量子效率积分球检测薄膜需要注意什么

荧光量子效率积分球是一种特殊的积分球,它可以用于测量荧光材料在特定波长下的荧光量子效率。它由一个具有高朗伯特性的漫反射材料制成,具有高达99%的反射率和朗伯特性。荧光量子效率积分球的使用方法包括将样品放置在积分球的样品口中,调整激…

【C++高阶(二)】熟悉STL中的map和set --了解KV模型和pair结构

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 map和set 1. 前言2. map和set介绍3. pair结构介…

JWT登录认证(1登录)

JwtUtil package com.lin.springboot01.utils; import com.auth0.jwt.JWT; import com.auth0.jwt.algorithms.Algorithm; import java.util.Date; import java.util.Map;public class JwtUtil {private static final String KEY "liner2332";//接受业务数据&#xf…

Python in Visual Studio Code 2023年11月发布

排版:Alan Wang 我们很高兴地宣布 Visual Studio Code 的 Python 和 Jupyter 扩展将于 2023 年 11 月发布! 此版本包括以下公告: 改进了使用 Shift Enter 在终端中运行当前行弃用内置 linting 和格式设置功能对 Python linting 扩展的改进重…

linux安装nginx并配置服务的详细步骤

文章目录 依赖安装安装gcc环境安装 pcre安装zlib安装openssl 安装Nginx在nginx官网下载安装包将安装包上传linux解压文件手动创建用户和用户组编译目录编译源码并安装启动查看进程 设置nginx服务并开机自启 依赖安装 nginx安装前需要一些依赖,如果已经安装了则忽略…

大数据Doris(二十三):取消导入与其他导入案例参考

文章目录 取消导入与其他导入案例参考 一、取消导入

Django(七、模型层)

文章目录 模型层模型层前期准备使用django ORM要注意 代码演示:切换MySQL数据库如何查看django ORM 底层原理? 单表操作模型层之ORM常见关键字基础的增删改查常用的关键字 常见的十几种查询基于双下滑线的查询 模型层 模型层前期准备 使用django ORM要…