Python 内置的数据结构

三、元组(tuple)

python 作为一个发展中的语言,也提供了其他的一些数据类型。

tuple也是 python 中一个标准的序列类型。

他的一些操作和strlist是通用的,因为他们都是一种序列(sequence data type)

支持索引、切片、连接,支持使用内置len()来获取tuple中元素的个数。

另外tuple不可变对象,所以不能对tuple做修改。

元组与列表相似,不同之处在于元组的元素不能修改

3.1 元组的创建

元组使用()定义,用于存储一串信息,使用comma(逗号)隔开的多个值就组成了tuple

索引从0开始。(索引就是数据在元组中的位置编号)

t = 10, 20, 30, 25  # 创建了一个 tuple 并把这个 tuple 赋值给变量 t
print(t)

注意:tuple 在输出的时候总是用一对圆括号包裹起来


如果tuple中只有一个元素,这个时候书写的时候容器与普通的变量混淆,所以,python 要求在第一个元素的后面必须添加一个 comma

t2 = 10,
print(t2)

前面的这种tuple写法可读性不好,所以在实际使用的时候会直接把tuple用圆括号括起来,就像他在终端的输出的那样。

t1 = (10, 20, 30, 25)
print(t1)
t2 = (10,)
print(t2)

如圆括号中不添加任何元素则就是一个空的tuple

直接调用tuple()也可以得到一个空的tuple

t1 = ()  # 1个空的 tuple
print(t1) t2 = tuple()
print(t2) # 1个空的 tuple

tuple也支持嵌套

v = ([1, 2, 3], [3, 2, 1], (2, 3))
print(v)

使用内置函数len()获取tuple的长度

v = (10, 20, 30, 40)
print(len(v)) # 4
v = ([1, 2, 3], [3, 2, 1], (2, 3))
print(len(v)) # 3

3.2 元组的索引和切片

tuplelist一样都属于序列,list的大部分操作都能支持操作tuple,除了修改和删除操作。

v = (10, 20, 30, 40)
print(v[0])
print(v[1:3])

v = (10, 20, 30, 40)
v[1] = 100 # 抛出异常

Python第五章-内置数据结构03-元组的更多相关文章

  1. Python第五章-内置数据结构05-集合

    Python内置数据结构 五.集合(set) python 还提供了另外一种数据类型:set. set用于包含一组无序的不重复对象.所以set中的元素有点像dict的key.这是set与 list的最 ...

  2. Python第五章-内置数据结构01-字符串

    Python 内置的数据结构 ​ 到目前为止,我们如果想保存一些数据,只能通过变量.但是如果遇到较多的数据要保存,这个时候时候用变量就变的不太现实. ​ 我们需要能够保存大量数据的类似变量的东东,这种 ...

  3. Python第五章-内置数据结构02-列表

    Python 内置的数据结构 二.列表(list) 想一想: 前面学习的字符串可以用来存储一串信息,那么想一想,怎样存储咱们班所有同学的名字呢? 定义100个变量,每个变量存放一个学生的姓名可行吗?有 ...

  4. Python第五章-内置数据结构04-字典

    Python 内置的数据结构 四.字典(dict) 字典也是 python 提供给我们的又一个非常重要且有用的数据结构. 字典在别的语言中有时叫关联数组.关联内存.Map等. 字典中存储的是一系列的k ...

  5. Python的4个内置数据结构

    Python提供了4个内置数据结构(内置指可以直接使用,无需先导入),可以保存任何对象集合,分别是列表.元组.字典和集合. 一.列表有序的可变对象集合. 1.列表的创建例子 list1 = []lis ...

  6. python的四种内置数据结构

    对于每种编程语言一般都会规定一些容器来保存某些数据,就像java的集合和数组一样python也同样有这样的结构 而对于python他有四个这样的内置容器来存储数据,他们都是python语言的一部分可以 ...

  7. Python内置数据结构之元组tuple

    1. Python序列之元组:不可修改的序列 元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能像列表式的增删改,只能查,切片,所以元组又叫只读列表. 元组用圆括号括起(这是通常采用的做法) ...

  8. [PY3]——内置数据结构(2)——元组及其常用操作

    定义和初始化 #tuple() 使用工厂函数tuple定义一个空元组 #() 使用圆括号定义一个空元组 #(1,2,3) 使用圆括号定义有初始值的元组 #tuple(可迭代对象) 把可迭代对象转换为一 ...

  9. Python的内置数据结构

    Python内置数据结构一共有6类: 数字 字符串 列表 元组 字典 文件 一.数字 数字类型就没什么好说的了,大家自行理解 二.字符串 1.字符串的特性(重要): 序列化特性:字符串具有一个很重要的 ...

随机推荐

  1. Canvas和svg总结比较

    Canvas 基本用法 getContext() 描边和填充 strokeStyle:设置描边样式fillStyle:设置填充样式stroke():描边fill():填充 绘制矩形 fillRect( ...

  2. TCP与三次握手

    TCP是在不可靠的网络层上提供可靠的传输服务.如何理解?假设你拥有一个快递公司,但是快递小哥不是很靠谱, 送货偶尔会出问题,所以你经常收到投诉电话,处理一些复杂的问题.比如有些快递压舱了,有些丢失了, ...

  3. Git的安装与TortoiseGit的安装和汉化

    下载Git 进入https://git-scm.com/downloads 可以看到如下界面 因为我是windows系统,选择windows即可. 有的朋友因为网络慢的一些原因不能很快下载下来,可以进 ...

  4. C++走向远洋——23(项目一,三角形,类)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:sanjiaoxing.cpp * 作者:常轩 * 微信公众号: ...

  5. 整合 KAFKA+Flink 实例(第一部分,趟坑记录)

    2017年后,一大波网络喧嚣,说流式处理如何牛叉,如何高大上,抱歉,工作满负荷,没空玩那个: 今年疫情隔离在家,无聊,开始学习 KAFKA+Flink ,目前的打算是用爬虫抓取网页数据,传递到Kafk ...

  6. pip3 install mysqlclient安装失败

    报错信息: OSError: mysql_config not found 解决方法: 执行以下命令 yum install python-devel mysql-devel -y 然后再 pip3 ...

  7.  前端面试题目总结1

    数据类型 js中的数据类型有两类:值类型和引用类型 值类型:number.string.boolean.Symbol.undefined 引用类型:null.数组.对象 使用typeof能用来干什么 ...

  8. 30分钟学会Objective-C

    注: 本文首发于我的个人博客:https://evilpan.com/2019/04/05/objc-basics/ 请原谅我的标题党.但是如果你有其他语言的学习经验,要学习Objective-C的语 ...

  9. 「前端」rem 缩放方案 flexible-js 兼容 375px 方案的思路

    本文来自尚妆前端团队南洋 发表于尚妆github博客,欢迎订阅. 移动端H5页面rem缩放方案flexible.js兼容375px方案的思路 参考: 移动端高清.多屏适配方案 viewport-and ...

  10. 第八次——非确定的自动机NFA确定化为DFA

    NFA 确定化为 DFA 子集法: f(q,a)={q1,q2,…,qn},状态集的子集 将{q1,q2,…,qn}看做一个状态A,去记录NFA读入输入符号之后可能达到的所有状态的集合. 步骤: 1. ...