Tuple(元组)是python的基本序列三种类型之一(另外两种是List, Range),是“笨方法“学python3中没有讲到的数据类型,因此专门查了下官方资料,中可以查找到对Tuple解释,它是一种不可改变的序列,即序列值已经序列顺序在创建初始化时就已经固定好,其内容不可改变,通常是用于收据异构数据结果防止被改变(在异构计算中比较有优势),还可以在一个class中定义一个元素用于异构计算,由此看来该结构和AI有很大的关联性(在此建议,学语言多看官方文档能收获很多,毕竟原文才是最好的理解,每个人都有自己的理解角度,有的时候会有较大偏差,“”笨方法“学python3中的很多知识点都需要自己去扩充)。官方文档原文解释如下:

由上述特性可知,与list最大的不同就是,元组内容不可改,而list可以修改,我个人理解为 list的常量,可以为list的一种特殊形式,但不支持list很多操作。

元组创建

Tuple的表示方法和list不一样,list是由【】表示,而Tuple是用()表示,元素之间同样使用,号表示,其创建方法官方解释只给出了四种

1: 创建一个空的Tuple,之间使用()即可

tup1=()
print(tup1)

运行结果:

2:创建只有一个元素,为了避免歧义,需要在元素后面添加一个逗号(a,)

 company=("huawei",)print(company)

运行结果:

不加逗号,会把括号认为运算符,其运行结果如下:

3:创建有多个元素的tuple:

companys=("huawei", "Google","Ali","Baidu")
print(companys)

运行结果如下:

4:利用其build-in函数,使用迭代器创建一个tuple

当迭代器本身就是一个tuple,新建的tuple就是完全复制一个新的tuple,值和序列完全一样:

companys=("huawei", "Google","Ali","Baidu")
companys1=tuple(companys)
print(companys1)

运行结果:

当参数为一个字符串时,其tuple 按照list进行转换,将每个字符转成一个元素,例子如下:

companys2=tuple('huawei')
print(companys2)

运算结果如下:

当参数为一个list时,将按照顺序和值转换成一个tuple,例子如下:

listcompany=["Facebook","Tecent","ARM","JingDong"]
companys3=tuple(listcompany)
print(companys3)

运行结果如下:

访问元组元素

对元组访问和list访问方式一样的,都是采用index方式,例子如下:

companys=("huawei", "Google","Ali","Baidu")
print(companys[2])
print(companys[1])

运行结果如下:

删除元组

元组不运行删除某个元素值,只能使用del删除整个元组,不在举例子

元组其他操作

除了上述操作外,元组同样支持序列的common操作, common操作如下:

Operation Result
x in s True if an item of s is equal to x, else False
x not in s False if an item of s is equal to x, else True
s + t the concatenation of s and t
s * n  or  n * s equivalent to adding s to itself n times
s[i] ith item of s, origin 0
s[i:j] slice of s from i to j
s[i:j:k] slice of s from i to j with step k
len(s) length of s
min(s) smallest item of s
max(s) largest item of s
s.index(x[, i[, j]]) index of the first occurrence of x in s (at or after index i and before index j)
s.count(x) total number of occurrences of x in s

笨方法“学习python笔记之元组(tuple)相关推荐

  1. 笨方法“学习python笔记之print()函数end

    在<"笨方法"学习python>中的第7个习题中的用例代码中有print()函数的end用例 代码如下: end1 = "C" end2 = &qu ...

  2. 笨方法“学习python笔记之urlopen

    最近在学习"笨方法"学python中,在习题41中发现了urlopen()函数,特意查了下官方资料,查资料最好查官方资料,最好不要做"百度君".urlopen( ...

  3. 笨方法“学习python笔记之输入

    Python程序输入和其他语言一样,主要有三种方式 1:常用的 使用input()函数,作为程序的输入 例子就采用<"笨方法"学python>中的第·12个习题作为例子 ...

  4. “笨方法”学习Python笔记(1)-Windows下的准备

    Python入门书籍 来自于开源中国微信公众号推荐的一篇文章 全民Python时代,豆瓣高级工程师告诉你 Python 怎么学 问:请问你目前最好的入门书是那本?有没有和PHP或者其他语言对比讲Pyt ...

  5. 笨方法“学习python笔记之字典

    列表是线性存储,且可以随机访问,且是有序的,其访问可以通过索引来访问.而字典是另外一种存储数据,可以通过建立键和值的映射关系,就和查字典差不多,通过键就可以查找到相对应的值 字典创建 字典创建过程中每 ...

  6. 笨方法“学习python笔记之字符串

    字符串(str)是python的一种重要的数据格式,官方文档中对字符串的解释为一种文本序列格式,其内容不可修改(有点类似元组),官方解释如下: 字符串表示 可以看到官方文档里面,给出了字符串的三种表示 ...

  7. 笨方法“学习python笔记之列表

    列表是python 的基本数据结构,是一堆数据的集合,类似于其他语言的数组一样,每个列表成员都有一个索引,以便于进行访问. 列表创建 列表创建比较简单,每个列表成员使用逗号进行分开,例如如下: com ...

  8. 笨方法“学习python笔记之文件操作

    python 与其他语言相比,操作文件非常方便,提供了良好的API. Open函数 python是以文件对象的方式来操作文件,操作文件之前首先要打开文件产生一个文件对象,以便进行后续操作. open( ...

  9. 笨方法“学习python笔记之print换行

    python中 print()函数打印换行有几种 方法: 1:第一种方法是使用多个print打印,多个print默认换行 例子 print("Hello world") print ...

最新文章

  1. 通过application.properties修改打开网页的方式
  2. 人们怕人工智能获得意识到底是怕哪个方面?
  3. CentOS6.5挂载windows共享文件夹
  4. laravel+php+支付功能,laravel+微信支付源码
  5. 促进新一代人工智能产业发展三年行动计划_工信部新一代人工智能产业创新重点揭榜任务——中国联通智能化网络基础设施及开放平台启动会成功召开...
  6. 【POJ - 2533】Longest Ordered Subsequence(四种方法解决最长上升子序列 含二分优化版本)
  7. 如何删除Win All的流氓程序文件
  8. 沙利文:2019Q4中国公有云市场份额:阿里云、腾讯云、华为云位列前三
  9. [免费配音软件]语音合成,让阿里云小姐姐为你的视频配音
  10. Terminator the Sara Conner Chronicles
  11. 你真的理解了MVC, MVP, MVVM吗?
  12. DebugView Windows 7 不显示调试信息
  13. 京东方和TCL为争夺全球液晶面板老大位置,展开并购竞赛
  14. Labview | VDM与VAS2018下载
  15. ROS【IMU】姿态检测与解算
  16. [DFS]最简题-搜索字母排列
  17. FANUC小黄机刀库小知识 介绍
  18. 华大芯片时钟调试配置记录
  19. centos7离线安装telnet
  20. 编译原理三大经典:龙书 虎书 鲸书

热门文章

  1. JEECG 3.7.8 新版表单校验提示风格使用升级方法(validform 新风格漂亮,布局简单)
  2. JEECG 智能开发平台二次开发帮助文档
  3. JEECG - 基于代码生成器的J2EE智能开发框架 续二: 代码生成器使用规则
  4. OracleExcel VBA写获取表字段类型及约束语句
  5. 记录hadoop3.2.2出现Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster问题
  6. apache/nginx中equest.getServerName()外网环境获取不到代理地址/域名
  7. [转载] 七龙珠第一部——第003话 龟仙人的筋斗云
  8. Nagios 3.x 在线帮助中文版
  9. java程序 启动慢_spring boot 程序启动缓慢的问题
  10. (1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。 (2)定义3个类:Tank,Fl