Python语言中Tuple的由来分析

 更新时间:2022年09月23日 16:15:12   作者:谷哥的小弟  
Tuple在Python中表示一种“大小固定的有序序列”,这篇文章主要介绍了Python语言中Tuple的由来,需要的朋友可以参考下

Tuple概述

在Python中使用元组(Tuple)存储一组信息,其特征如下:

1、使用()定义元组
2、元组中使用逗号 , 分割各元素;各元素类型可不一致。
3、元组的索引(下标)从0开始
4、可使用len(元组)求元组的元素个数
5、元组元素个数 = 元组索引最大值 + 1
6、通过元组[索引]的方式获取元组中的元素

简单来说:Tuple在Python中表示一种“大小固定的有序序列”

Tuple与英语

之前,有位可爱的小伙伴问我:为什么Java里面有种集合叫Map,而不是叫其它名字?这个挺好解释和理解的。今天,他又追问我:Python语言中的Tuple到底是什么意思?怎么要取这么个名字呢?

要回答这个问题,我们可能要从英语单词开始说起;我们先来瞅瞅英语中对于倍数的表示:

倍数含义
couple2倍
triple3倍
quadruple4倍
quintuple5倍
sextuple6倍
centuple100倍

所以,在英语中-tuple后缀表示倍数的含义。

Tuple与数学

大约在1940年,数学中出现了有序数对的概念,它常表示为2-tuple。

什么是有序数对呢?顺序的两个数a和b组成的数对,数学符号记作(a,b)叫做有序数对。所谓有序,是指一个2-tuple的元素顺序是固定的,例如(a,b)和(b,a)是不同的有序数对。有序数对可以准确的表示平面上的一点,也就是坐标(x,y)。

3个有序数列怎么表示呢,可以写为(1,(2,3)),也可以直接写成(1,2,3)。 扩展到一般情况,n个有序数列,就被表示为n-tuple(n是正整数)。 把有序的元素写在( )内,再用逗号分隔;例如(9,5,2,7,6)就表示一个5-tuple。

这就是Tuple在数学中的由来。

Tuple与编程

后来,编程语言从数学中引入了Tuple;中国的科技文献将其翻译成了元组。说实话,这个翻译有点让人捉摸不透。如果,仅仅从字面意思是很难理解这种数据结构的特点。所以,我们可以回归到数学:在数学定义中Tuple用来表示一个有限且有序的序列;它的长度不可变且元素有序。

到此这篇关于Python语言中Tuple的由来的文章就介绍到这了,更多相关Python Tuple由来内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用Python Cupy模块加速大规模数值计算实例深究

    使用Python Cupy模块加速大规模数值计算实例深究

    Cupy是一个基于NumPy的库,专门设计用于在GPU上进行高性能计算,它提供了与NumPy相似的API,因此用户可以很容易地将现有的NumPy代码迁移到Cupy上,从而充分利用GPU的并行计算能力
    2023-12-12
  • Python利用jmespath模块进行json数据处理

    Python利用jmespath模块进行json数据处理

    jmespath是python的第三方模块,是需要额外安装的。它在python原有的json数据处理上做出了很大的贡献。本文将详细介绍如何利用jmespath实现json数据处理,需要的可以参考一下
    2022-03-03
  • Pycharm创建文件时自动生成文件头注释(自定义设置作者日期)

    Pycharm创建文件时自动生成文件头注释(自定义设置作者日期)

    这篇文章主要介绍了Pycharm创建文件时自动生成文件头注释(自定义设置作者日期),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Python asyncore socket客户端开发基本使用教程

    Python asyncore socket客户端开发基本使用教程

    asyncore库是python的一个标准库,提供了以异步的方式写入套接字服务的客户端和服务器的基础结构,这篇文章主要介绍了Python asyncore socket客户端开发基本使用,需要的朋友可以参考下
    2022-12-12
  • 将django项目部署到centos的踩坑实战

    将django项目部署到centos的踩坑实战

    Django部署到Cenos需要安装大量的依赖包, 有很多坑需要踩,这篇文章主要给大家介绍了关于将django项目部署到centos踩坑的相关资料,需要的朋友可以参考下
    2021-07-07
  • python txt中的文件,逐行读取并且每行赋值给变量问题

    python txt中的文件,逐行读取并且每行赋值给变量问题

    这篇文章主要介绍了python txt中的文件,逐行读取并且每行赋值给变量问题,具有很好的参考价值,希望对大家有所帮助。
    2023-02-02
  • Python实现常见的4种坐标互相转换

    Python实现常见的4种坐标互相转换

    主流被使用的地理坐标系并不统一,常用的有WGS84、GCJ02(火星坐标系)、BD09(百度坐标系)以及百度地图中保存矢量信息的web墨卡托,本文利用Python编写相关类以实现4种坐标系统之间的互相转换,希望对大家有所帮助
    2023-02-02
  • Python通过4种方式实现进程数据通信

    Python通过4种方式实现进程数据通信

    这篇文章主要介绍了Python通过4种方式实现进程数据通信,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • numpy 进行数组拼接,分别在行和列上合并的实例

    numpy 进行数组拼接,分别在行和列上合并的实例

    今天小编就为大家分享一篇numpy 进行数组拼接,分别在行和列上合并的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • python的dataframe转换为多维矩阵的方法

    python的dataframe转换为多维矩阵的方法

    下面小编就为大家分享一篇python的dataframe转换为多维矩阵的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04

最新评论