Python 中常用的数据类型及相关操作详解

文章目录

      • 列表(Lists)
        • 创建列表
        • 访问列表元素
        • 添加元素到列表
        • 删除列表元素
        • 切片(Slicing)
        • 其他常用操作
      • 元组(Tuples)
        • 创建元组
        • 访问元组元素
        • 元组长度
        • 其他常用操作
      • 字符串(Strings)
        • 创建字符串
        • 字符串长度
        • 访问字符串字符
        • 字符串格式化
        • 其他常用操作
      • 集合(Sets)
        • 创建集合
        • 集合长度
        • 检查元素是否在集合中
        • 添加元素到集合
        • 删除集合元素
        • 集合操作
      • 字典(Dictionaries)
        • 创建字典
        • 访问字典元素
        • 添加或修改字典元素
        • 删除字典元素
        • 循环遍历字典
        • 其他常用操作
      • 总结

Python 作为一门高级编程语言,提供了多种不同的数据类型,包括列表、元组、字符串、集合和字典等。这些数据类型在 Python 中被广泛使用,因此熟悉它们的特点和相关操作非常重要。
本文将详细讲解 Python 中的各种数据类型,包括它们的特性、常用操作、常见应用场景以及与其相关的其他概念。

列表(Lists)

在这里插入图片描述

列表是 Python 中最常用的数据类型之一,用于存储具有序号的元素。列表使用方括号([])定义,并可以包含任何类型的元素。

创建列表

你可以使用以下语法创建一个空列表:

my_list = []

也可以使用以下语法创建包含初始值的列表:

my_list = [1, 2, 3, 'apple', 'banana']

访问列表元素

你可以使用下标(索引)来访问列表元素。Python 中的下标从0开始。例如,以下是一个包含三个元素的列表:

my_list = ['apple', 'banana', 'cherry']

你可以使用以下语法来访问这个列表中的元素。

print(my_list[0])  # 输出 'apple'

也可以使用负数下标访问列表的元素:

print(my_list[-1])  # 输出 'cherry'

需要注意的是,如果使用超出范围的下标来访问列表元素,Python 将引发 IndexError 错误。

添加元素到列表

你可以使用 append() 方法将元素添加到列表末尾:

my_list = ['apple', 'banana', 'cherry']
my_list.append('orange')
print(my_list)  # 输出 ['apple', 'banana', 'cherry', 'orange']

也可以使用 insert() 方法在列表中的特定位置添加元素:

my_list = ['apple', 'banana', 'cherry']
my_list.insert(1, 'orange')
print(my_list)  # 输出 ['apple', 'orange', 'banana', 'cherry']

删除列表元素

你可以使用 remove() 方法从列表中删除元素:

my_list = ['apple', 'banana', 'cherry']
my_list.remove('banana')
print(my_list)  # 输出 ['apple', 'cherry']

你也可以使用 pop() 方法从列表中删除指定位置的元素:

my_list = ['apple', 'banana', 'cherry']
my_list.pop(1)
print(my_list)  # 输出 ['apple', 'cherry']

切片(Slicing)

切片是指从一个序列中获取子序列的操作。在 Python 中,通过设置开始和结束位置来获取子序列。例如,假设我们有以下列表:

my_list = ['apple', 'banana', 'cherry', 'orange', 'pear']

你可以使用以下语法获取从第二个元素到第四个元素的子序列:

print(my_list[1:4]) # 输出 ['banana', 'cherry', 'orange']

切片操作也可以用于字符串、元组和其他序列类型。

其他常用操作

以下是一些其他常用的列表操作:

  • 使用 sort() 方法对列表进行排序。
  • 使用 reverse() 方法反转列表中的元素顺序。
  • 使用 len() 方法获取列表中元素的数量。
  • 使用 in 关键字检查列表中是否存在某个元素。

元组(Tuples)

在这里插入图片描述

元组和列表类似,都是有序的集合。与列表不同的是,元组是不可变的,一旦创建就不能被修改、添加或删除。元组使用圆括号(())定义。

创建元组

你可以通过以下方法创建一个包含初始值的元组:

my_tuple = (1, 2, 3)  # 包含三个整数的元组
my_tuple = ('apple', 'banana', 'cherry')  # 包含三个字符串的元组

访问元组元素

你可以使用下标(索引)来访问元组中的元素。例如,以下是一个包含三个元素的元组:

my_tuple = ('apple', 'banana', 'cherry')

你可以使用以下语法来访问这个元组中的元素。

print(my_tuple[0])  # 输出 'apple'

元组长度

你可以使用 len() 函数获得元组的长度:

my_tuple = ('apple', 'banana', 'cherry')
print(len(my_tuple))  # 输出 3

其他常用操作

以下是一些其他常用的元组操作:

  • 可以使用加号运算符 + 实现元组的拼接。
  • 可以使用乘号运算符 * 复制元组。

字符串(Strings)

字符串是 Python 中最基本的数据类型之一,表示一系列字符。字符串在 Python 中是不可变的。字符串使用单引号(')或双引号(")括起来。

创建字符串

你可以使用以下语法创建一个包含初始值的字符串:

my_string = 'hello world'  # 包含一个字符串的字符串

字符串长度

你可以使用 len() 函数获得字符串的长度:

my_string = 'hello world'
print(len(my_string))  # 输出 11

访问字符串字符

你可以使用下标(索引)来访问字符串中的字符。例如,以下是一个包含一个字符串的变量。

my_string = 'hello world'

你可以使用以下语法来访问这个字符串中的字符。

print(my_string[0])  # 输出 'h'

字符串格式化

字符串格式化是指将变量的值插入到字符串中。在 Python 中,可以使用以下方法来格式化字符串:

name = 'Alice'
age = 23
print('My name is %s and I am %d years old.' % (name, age))
# 输出 My name is Alice and I am 23 years old.

在这个例子中,%s%d 是占位符,分别表示字符串和整数类型的变量。可以在字符串末尾使用 % 操作符,后面跟着需要插入的变量列表。

其他常用操作

以下是一些其他常用的字符串操作:

  • 可以使用加号运算符 + 将字符串拼接在一起。
  • 可以使用乘号运算符 * 复制字符串。

集合(Sets)

集合是 Python 中另一种常用的数据类型,它是一个无序的集合,没有重复元素。集合使用花括号({})定义,并用逗号分隔元素。

创建集合

你可以通过以下方法创建一个空集合:

my_set = set()

也可以使用以下语法创建包含初始值的集合:

my_set = {1, 2, 3}  # 包含三个整数的集合
my_set = {'apple', 'banana', 'cherry'}  # 包含三个字符串的集合

集合长度

你可以使用 len() 函数获得集合的长度:

my_set = {'apple', 'banana', 'cherry'}
print(len(my_set))  # 输出 3

检查元素是否在集合中

你可以使用 in 关键字检查集合中是否包含特定元素:

my_set = {'apple', 'banana', 'cherry'}
if 'apple' in my_set:
    print('Yes')
else:
    print('No')

添加元素到集合

你可以使用 add() 方法将元素添加到集合中:

my_set = {'apple', 'banana', 'cherry'}
my_set.add('orange')
print(my_set)  # 输出 {'apple', 'banana', 'cherry', 'orange'}

删除集合元素

你可以使用 remove() 方法从集合中删除元素:

my_set = {'apple', 'banana', 'cherry'}
my_set.remove('banana')
print(my_set)  # 输出 {'apple', 'cherry'}

需要注意的是,如果使用不存在于集合中的元素作为参数调用 remove() 方法,Python 将引发 KeyError 错误。

你也可以使用 discard() 方法从集合中删除元素。与 remove() 方法不同的是,如果元素不存在于集合中,discard() 方法不会引发错误。

集合操作

集合支持多种操作,包括并集、交集和差集等。以下是一些常见的集合操作:

  • 使用 union() 方法计算两个集合的并集。
  • 使用 intersection() 方法计算两个集合的交集。
  • 使用 difference() 方法计算两个集合的差集。
  • 使用 symmetric_difference() 方法计算两个集合的对称差集(即只在一个集合中出现的元素)。

字典(Dictionaries)

在这里插入图片描述

字典是 Python 中极其有用的数据类型之一,它存储键值对。字典使用花括号({})定义,并用逗号分隔键值对。

创建字典

你可以通过以下方法创建一个空字典:

my_dict = {}

也可以使用以下语法创建包含初始值的字典:

my_dict = {'name': 'Alice', 'age': 23}

访问字典元素

你可以使用方括号([])和键来访问字典中的值。例如,以下是一个包含两个键值对的字典:

my_dict = {'name': 'Alice', 'age': 23}

你可以使用以下语法来访问这个字典中的元素。

print(my_dict['name'])  # 输出 'Alice'

添加或修改字典元素

你可以使用以下语法添加或修改字典中的元素:

my_dict = {'name': 'Alice', 'age': 23}
my_dict['email'] = 'alice@example.com'
my_dict['age'] = 24
print(my_dict)  # 输出 {'name': 'Alice', 'age': 24, 'email': 'alice@example.com'}

删除字典元素

你可以使用 del 关键字删除字典中的元素:

my_dict = {'name': 'Alice', 'age': 23}
del my_dict['age']
print(my_dict)  # 输出 {'name': 'Alice'}

你也可以使用 pop() 方法删除指定键的元素:

my_dict = {'name': 'Alice', 'age': 23}
my_dict.pop('age')
print(my_dict)  # 输出 {'name': 'Alice'}

循环遍历字典

循环遍历字典可以使用以下语法:

my_dict = {'name': 'Alice', 'age': 23}
for key in my_dict:
    print(key, my_dict[key])

这将逐个输出字典中的键和对应的值。

其他常用操作

以下是一些其他常用的字典操作:

  • 使用 keys() 方法获取字典中所有的键。
  • 使用 values() 方法获取字典中所有的值。
  • 使用 items() 方法获取字典中所有的键值对。

总结

Python 中有多种不同的数据类型,包括列表、元组、字符串、集合和字典等。要熟悉它们的特点和相关操作非常重要。在本文中,我们简要介绍了每个数据类型的特点、创建方法和常见操作。

在这里插入图片描述

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

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

相关文章

Three.js--》实现图片转3D效果展示

目录 项目搭建 初始化three.js基础代码 加载图片纹理 设置着色器 今天简单实现一个three.js的小Demo,加强自己对three知识的掌握与学习,只有在项目中才能灵活将所学知识运用起来,话不多说直接开始。 项目搭建 本案例还是借助框架书写th…

【Qt】Ubuntu安装GCC9.3.0版本的Qt5.15.5

目录 一、安装GCC9.3.0 1.下载GCC9.3.0源码 2.获取依赖项的包 3.生成Makefile文件 4.编译并安装 5.生成软链接 6. 查看GCC版本 二、安装Qt 1.下载Qt安装包 2.创建Qt项目并运行 一、安装GCC9.3.0 1.下载GCC9.3.0源码 https://ftp.gnu.org/gnu/gcc/gcc-9.3.0/gcc-9.3…

excel爬虫相关学习1:简单的excel爬虫

目录 1 什么是excel 爬虫 2 EXCEL爬虫 2.1 excel 爬虫的入口 2.2 需要配置的信息 2.2.1 如何获得 ua信息 2.3 获取的信息 2.3.1 获取信息的基本内容 2.3.2 获取过程 2.3.3 我们只用关注“表视图 ” 即可 2.4 EXCEL获得的爬虫数据 加载到excel里 2.5 数据到了excel表后…

Three.js--》实现3d汽车模型展览搭建

目录 项目搭建 初始化three.js基础代码 添加汽车模型展示 动态修改汽车模型 今天简单实现一个three.js的小Demo,加强自己对three知识的掌握与学习,只有在项目中才能灵活将所学知识运用起来,话不多说直接开始。 项目搭建 本案例还是借助…

flink主要组件及高可用配置

背景 flink不论运行在哪种环境,例如Yarn,Mesos,Kebernute以及独立集群,每个应用都会包含重要的几个组件,本文就来讲述下flink的主要组件以及如何实现flink的高可用配置 flink主要组件 如图所示,flink主要…

Java实训日志02

文章目录 八、项目开发实现步骤(二)创建项目1、创建Java项目2、创建目录,添加素材(1)创建help目录添加帮助文档(2)创建images目录添加图像素材(3)创建lib目录添加数据库驱…

Dockerfile创建镜像

一、Docker镜像的创建 创建镜像有三种方法,分别为【基于已有镜像创建】、【基于本地模板创建】以及【基于Dockerfile创建】。 1.1 基于现有镜像创建 (1)首先启动一个镜像,在容器里做修改docker run -it centos:7 /bin/bash …

设计模式之工厂方法模式笔记

设计模式之工厂方法模式笔记 说明Factory Method(工厂方法)目录UML抽象工厂示例类图咖啡抽象类美式咖啡类拿铁咖啡类 咖啡工厂接口美式咖啡工厂类拿铁咖啡工厂类 咖啡店类测试类 说明 记录下学习设计模式-工厂方法模式的写法。 Factory Method(工厂方法) 意图:定义一个用于创…

主从架构lua脚本-Redis(四)

上篇文章介绍了rdb、aof持久化。 持久化RDB/AOF-Redis(三)https://blog.csdn.net/ke1ying/article/details/131148269 redis数据备份策略 写job每小时copy一份到其他目录。目录里可以保留最近一个月数据。把目录日志保存到其他服务器,防止机…

专业的知识图谱应用门槛正在被不断降低

前⾔ 知识图谱(knowledge graph)⼀度被专家称为“AI皇冠上的明珠”,因为知识图谱技术是⼈⼯智能技术⽅向中的重要⼀环。它不仅可以为其他⼈⼯智能应⽤提供⽀持,如⾃然语⾔处理、推荐系统等,更可以帮助⼈⼯智能系统⾃主…

《微服务实战》 第三十一章 ShardingSphere - ShardingSphere-JDBC

前言 Apache ShardingSphere 是一款分布式的数据库生态系统, 可以将任意数据库转换为分布式数据库,并通过数据分片、弹性伸缩、加密等能力对原有数据库进行增强。 Apache ShardingSphere 设计哲学为 Database Plus,旨在构建异构数据库上层的…

【Python 随练】统计字符类型个数

题目: 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 简介: 在本篇博客中,我们将解决一个字符统计问题:输入一行字符,统计其中英文字母、空格、数字和其他字符的个数。我们将提供…

NoSQLBooster 8.0.11 for MongoDB

MongoDB最智能的IDE。 NoSQLBooster 是适用于 MongoDB Server 3.6-6.0 的跨平台 GUI 工具,它提供了内置的 MongoDB 脚本调试器、全面的服务器监控工具、链接流畅查询、SQL 查询、查询代码生成器、任务调度、ES2020 支持和高级 IntelliSense 体验。 嵌入式MongoDB S…

强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验

【强化学习原理项目专栏】必看系列:单智能体、多智能体算法原理项目实战、相关技巧(调参、画图等、趣味项目实现、学术应用项目实现 专栏详细介绍:【强化学习原理项目专栏】必看系列:单智能体、多智能体算法原理项目实战、相关技巧…

redis键值对映射关系存储-Dict

基本概述 Redis是一个键值型(Key-Value Pair)的数据库,可以根据键实现快速的增删改查。而键与值的映射关系正是通过Dict来实现的。 Dict由三部分组成,分别是:哈希表(DictHashTable)、哈希节点&a…

redis安装

在官网下载: https://redis.io/download/ 或者直接下载: ​wget https://download.redis.io/releases/redis-6.2.12.tar.gz 解压到/usr/local/下 [rootlocalhost ~]# tar redis-6.2.12.tar.gz -C /usr/local/ [rootlocalhost ~]# cd /usr/local/redis-6.2.12 [rootlocalho…

C++算法————二分查找

又是鸽了三千万年 马上要打csp了,开始回流学j组的知识了,浅说一下二分吧() --------------------------------------------------------------------------------------------------------------------------------- 二分查找 …

了解MVC、MVP、MVVM模式

前言 在Android开发中,当你梳理完需求后,你要做的并不是马上写下你的第一行代码,而是需先设计好整个项目的技术框架今天,我将全面介绍Android开发中主流的技术框架MVC、MVP 与 MVVM模式,并实例讲解MVP模式&#xff0c…

面试篇:SpringCloud

一、SpringCloud常见的组件有什么? 1、常见微服务功能架构图 2、阿里巴巴SpringCloud常用组件 注册中心/配置中心:Nacos负载均衡:Ribbon服务调用:Feign服务保护:Sentinel服务网关:Gateway 二、服务注册…

Compose Desktop 实战 宝可梦图鉴

Compose Desktop 实战 宝可梦图鉴 前言 阅读本文需要一定compose基础,如果没有请移步Jetpack Compose入门详解(实时更新) 接口数据来源于pokeapi 项目源代码 如果你觉得不错,请给我一个star,THKS 实现效果 闲话不…