python常用数据结构元组详解

Python常用数据结构元组详解

简介

元组(tuple)是Python中的一种序列类型,与列表(list)类似,但是元组是不可变的,即不可添加、删除或修改元素。元组用小括号括起来,里面的元素用逗号隔开。

创建元组

可以使用小括号创建元组,也可以使用tuple函数将其他序列类型转换为元组。

# 使用小括号创建元组
t1 = (1, 2, 3)
# 使用tuple函数创建元组
t2 = tuple([1, 2, 3])
t3 = tuple("hello")

print(t1) # (1, 2, 3)
print(t2) # (1, 2, 3)
print(t3) # ('h', 'e', 'l', 'l', 'o')

元组操作

元组是一种不可变序列,所以不能通过索引、切片和赋值来修改元素。但是可以使用+运算符将两个或多个元组连接起来,使用*运算符将元组复制若干遍。

t1 = (1, 2, 3)
t2 = (4, 5, 6)

# 连接元组
t3 = t1 + t2
# 复制元组
t4 = t1 * 3

print(t3) # (1, 2, 3, 4, 5, 6)
print(t4) # (1, 2, 3, 1, 2, 3, 1, 2, 3)

取值和切片

可以使用下标访问元组的某个元素,也可以使用切片访问多个元素。

t1 = (1, 2, 3, 4, 5)

# 访问单个元素
print(t1[0]) # 1
print(t1[-1]) # 5

# 切片访问多个元素
print(t1[0:3]) # (1, 2, 3)
print(t1[-3:-1]) # (3, 4)

元组解包

可以将元组的元素解包成多个变量。

t1 = (1, 2, 3)

a, b, c = t1

print(a) # 1
print(b) # 2
print(c) # 3

示例1:元组用作返回值

元组常用在函数中作为返回值,可以一次性返回多个值。例如,下面的函数计算两个数的和与差,并返回两个结果。

def add_sub(x, y):
    add = x + y
    sub = x - y
    return add, sub

result = add_sub(10, 5)

print(result) # (15, 5)
print(result[0]) # 15
print(result[1]) # 5

示例2:元组用于数据打包

元组可以将相关数据打包在一起,以便更方便地传递和处理。例如,下面的代码将日期、时间、CPU占用率和内存占用率打包到一个元组中。

import datetime
import psutil

now = datetime.datetime.now()

cpu_usage = psutil.cpu_percent(interval=1)
memory_usage = psutil.virtual_memory().percent

data = (now.date(), now.time(), cpu_usage, memory_usage)

print(data) # (datetime.date(2021, 8, 1), datetime.time(12, 0, 0), 10.0, 20.0)

以上就是Python常用数据结构元组的详细讲解,有关元组的操作和应用场景在实际项目中非常常见。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python常用数据结构元组详解 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • 在Python中使用NumPy制作计算带有外积的曼德布罗特集的网格

    下面是在Python中使用NumPy制作计算带有外积的曼德布罗特集的网格的完整攻略。 准备工作 在开始制作计算带有外积的曼德布罗特集的网格之前,我们需要准备一些工作。 首先,需要安装NumPy库。可以通过以下命令在命令行终端中安装: pip install numpy 其次,需要引入NumPy库和matplotlib库。可以使用以下代码: import nu…

    python-answer 2023年3月25日
    00
  • python3中zip()函数使用详解

    Python3中zip()函数使用详解 介绍 zip() 函数可以将多个可迭代对象(例如列表、元组、字典等)中对应位置的元素打包成一个元组,并返回由这些元组组成的迭代器。新的迭代器生成的元素个数由输入的可迭代对象中元素数量最少的那个确定。 语法 zip([iterable, …]) 参数 iterable(可迭代对象): 一个或多个可迭代对象,例如列表、…

    python 2023年5月14日
    00
  • Python利用Xpath选择器爬取京东网商品信息

    Python利用Xpath选择器爬取京东网商品信息 简介 本文主要介绍如何使用Python的Xpath模块实现京东网商品信息的爬取。Xpath是一种支持路径选择的查询语言,常用于处理XML、HTML以及其他结构化文档的数据。本文将使用Python的Xpath模块和requests模块对京东网的商品信息进行爬取。 前提条件 在开始本文之前,请确保您已经安装了以…

    python 2023年5月14日
    00
  • Python:分层切片

    【问题标题】:Python: Hierarchical SlicingPython:分层切片 【发布时间】:2023-04-04 03:45:01 【问题描述】: 是否有更 Pythonic/numpythonic 的方式来进行某种嵌套/分层切片,即更漂亮的版本: _sum = 0 for i in np.arange(n): _sum += someFun…

    Python开发 2023年4月6日
    00
  • Go语言实现钉钉发送通知

    Go语言实现钉钉发送通知攻略 背景 现在很多公司使用钉钉作为办公工具,为了方便自己或者团队及时获取一些重要信息,需要使用钉钉发送通知。而Go语言有着高效并发和易于编写的特点,可以轻松地实现钉钉发送通知的功能。 实现步骤 步骤一:申请钉钉机器人 在使用钉钉发送通知时,需要先在钉钉中申请机器人。可以通过以下步骤进行申请: 登录钉钉开放平台(https://ope…

    python 2023年6月3日
    00
  • Python使用PyYAML库读写yaml文件的方法

    当需要处理YAML文件时,可以使用PyYAML库来读取和写入YAML文件。本文将详细介绍Python如何使用PyYAML库读写YAML文件的方法,并提供两个实例说明。 安装PyYAML库 使用PyYAML库时需要先安装,使用pip命令可以轻松安装PyYAML: pip install PyYAML 读取YAML文件 示例一 以下示例演示了如何使用PyYAML…

    python 2023年5月13日
    00
  • 通过gradio和摄像头获取照片和视频实现过程

    通过Gradio和摄像头获取照片和视频的实现过程主要包含以下步骤: 步骤一:安装Gradio和OpenCV 首先需要安装Gradio和OpenCV。Gradio是一个用于快速构建人机交互界面的Python库,而OpenCV是一个用于计算机视觉的Python库。可以使用pip安装: pip install gradio opencv-python 步骤二:编写…

    python 2023年5月23日
    00
  • 详解python3实现的web端json通信协议

    当今Web应用的需求越来越复杂,跨平台跨语言通信的需求也越来越高。JSON已经成为一种流行的数据交换格式,它轻量级且易于阅读和编写,能够方便地进行各种语言之间的数据传输。本攻略演示如何在Python3中实现Web端JSON通信协议。 步骤一:环境准备 安装Python3.x 安装Flask框架:pip install Flask 步骤二:实现JSON通信 使…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部