Python3笔记018 - 4.3 元组
第4章 序列的应用
python的数据类型分为:空类型、布尔类型、数字类型、字节类型、字符串类型、元组类型、列表类型、字典类型、集合类型
在python中序列是一块用于存放多个值的连续内存空间。
python内置了5种序列分别是元组、列表、字典、集合、字符串。
本章将介绍元组、列表、字典、集合四种序列类型,字符串将在第5章介绍
4.3 元组
元组的所有元素都放在一对中括号"()"中,两个相邻元素间使用逗号","分隔,在内容上,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到元组中,并且元素的类型可以不同,因为它们之间没有任何关系。
元组是不可变序列
4.3.1 元组的创建和删除
1、直接使用()创建元组
tuplename = (element1, element2, ..., elementn)
tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
print(tuple1)
output:
('Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
# 拓展:创建只有一个元素的元组
# 错误的姿势
tuple1 = ("Monday")
print(tuple1)
print(type(tuple1))
output:
Monday
<class 'str'>
# 正确的姿势
tuple1 = ("Monday",)
print(tuple1)
print(type(tuple1))
output:
('Monday',)
<class 'tuple'>
2、创建空元组
emptytuple = ()
print(emptytuple)
print(type(emptytuple))
output:
()
<class 'tuple'>
3、使用tuple()创建数值元组
tuple(data)
tuple1 = tuple(range(10, 20, 1))
print(tuple1)
output:
(10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
4、删除元组
del tuplename
tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
print(tuple1)
del tuple1
print(tuple1)
output:
('Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
NameError: name 'tuple1' is not defined
4.3.2 访问元组元素
1、索引
tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
print(tuple1[0])
output:
Monday
print(tuple1[-1])
output:
Sunday
2、遍历
tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
tuple2 = []
for i in tuple1:
tuple2.append(i)
print(tuple2)
output:
['Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
4.3.3 修改元组元素
1、连接
连接的内容必须都是元组
tuple1 = ("Monday", "Tuesday", "wednesday")
tuple2 = ("Thursday", "Friday", "Saturday", "Sunday")
tuple3 = tuple1 + tuple2
print(tuple1)
print(tuple2)
print(tuple3)
output:
('Monday', 'Tuesday', 'wednesday')
('Thursday', 'Friday', 'Saturday', 'Sunday')
('Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
4.3.4 元组推导式
number = (i for i in range(4))
for i in number:
print(i,end="\n")
print(tuple(number))
output:
0
1
2
3
()
4.3.5 元组与列表的区别
1、列表属于可变序列,它的元素可以随时修改或者删除;元组属于不可变序列,元素不可修改,除非整体替换;
2、列表可以使用append()、extend()、insert()、remove()、pop()等方法实现修改列表元素;
3、列表可以使用切片访问和修改列表中的元素。元组也支持切片,但它只支持通过切片访问元组中元素,不支持修改。
4、元组比列表的访问和处理速度快,所以当只是需要对其中的元素进行访问,而不进行任何修改时,建议使用元组。
5、列表不能作为字典的键,而元组可以。
敬请关注个人微信公众号:测试工匠麻辣烫
Python3笔记018 - 4.3 元组的更多相关文章
- python3笔记目录大纲汇总
篇一.python3基础知识和语句 python3笔记一:python基础知识 python3笔记二:进制转换与原码反码补码 python3笔记三:运算符与表达式 python3笔记四:if语句 py ...
- python3入门之列表和元组
获得更多资料欢迎进入我的网站或者 csdn或者博客园 前面一张主要学习了Python的安装,以及第一个程序helloword的编写,以及简单的输入和输出函数,这章主要介绍序列,列表,元组 序列 这章 ...
- python3笔记十:python数据类型-Tuple元组
一:学习内容 元组概念 元组创建.访问.删除 元组操作 元组方法 二:元组概念 1.本质:是一种有序集合 2.特点:与列表非常相似.一旦初始化就不能修改.使用小括号 三:元组创建 1.创建空元组 tu ...
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- 小甲鱼Python3笔记
000-愉快的开始 入门容易,学习难,代码量少. 跨平台: Windows, Mac OS, Linux, UNIX. 应用领域: 操作系统 WEB 3D动画 企业应用 云计算等等. 001-我和Py ...
- 廖雪峰Python3笔记
主要复习过一遍 简介 略 安装 略 *** 第一个Python程序 第一行的注释: # _*_ coding: utf-8 _*_ #!/usr/bin/env python3 print() 可以接 ...
- python3笔记(二)Python语言基础
缩进 要求严格的代码缩进是python语法的一大特色,就像C语言家族(C.C++.Java等等)中的花括号一样重要,在大多数场合还非常有必要.在很多代码规范里面也都有要求代码书写按照一定的规则进行换行 ...
- Python3 笔记
Ubuntu18.04 Python3环境 默认python3已经安装了, 可能是安装其他应用的时候因为依赖关系安装的. 安装pip3, 先sudo apt update 一下, apt-cache ...
- Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码
一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...
随机推荐
- Java实现 LeetCode 86 分割链表
86. 分隔链表 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前. 你应当保留两个分区中每个节点的初始相对位置. 示例: 输入: head = 1 ...
- Java中构造方法的详细介绍
构造方法是一个特殊的方法 它会在实例化对象时自动调用 构造方法的定义 必须同时满足下面的三个条件 方法名与类名相同 方法名前面没有返回值类型的声明 在方法中不能使用return语句返回值 class ...
- Python快速入门文档
前言 此文本质为本人学习Python过程中的笔记,部分地方叙述表达可能不够清晰,欢迎留言. (本文适合有一定程序语言基础的读者阅读(最好是c语言)) 一.基本语法 1.框架: (1)以缩进表示层次所属 ...
- 排队I(替换两层复杂for循环、避免TLE)
问题 C: 排队I(点击) 时间限制: 1 Sec 内存限制: 128 MB ...
- 使用Vim写LaTeX代码(Vim+Vimtex+Skim)
最近在写博客的时候发现对数学公式的支持并不好,于是就想寻找一个解决方案.我本身是一个爱折腾的人,有时尽管有现成的解决方案我有事也不愿意去用.于是多方查找资料,想寻求一个自定义的解决方案,最终把自己的目 ...
- 看到这些常见的android面试题,你慌了吗?
最近参加了一些Android工程师岗位的面试,总结了一些常见的考点,希望能帮到正在面试的你(答案还在整理中)! 1.Java调用函数传入实际参数时,是值传递还是引用传递? 2.单例模式的DCL方式,为 ...
- beego register db `default`, sql: unknown driver "mysql" (forgotten import?)
首先先去你的目录下找找这个文件里有没有东西,或者有没有这个文件 如果没有 执行下面两个命令: 下载:go get github.com/Go-SQL-Driver/MySQL 安装:go instal ...
- PN532资料 NFC RFID V3模块
最新PN532链接: https://pan.baidu.com/s/1HyXk-VuF-24ZJ8zAVb9lcA 提取码: bgju 复制这段内容后打开百度网盘手机App,操作更方便哦
- MFC中窗口启动后,CEdit编辑框默认光标位置设置,顺序的调节方法
MFC中窗口启动后,CEdit编辑框默认光标位设置,顺序的调节方法 在编辑界面按下ctrl+D键,就会出现所有控件的Tab键顺序,按照自己想要的顺序依次点击控件,就可以重新安排顺序.数值1就是默认停留 ...
- WeChair项目Beta冲刺(9/10)
团队项目进行情况 1.昨日进展 Beta冲刺第九天 昨日进展: 项目开始扫尾 2.今日安排 前端:前端工作已经完成 后端:扫码占座后端测试,实现对超时预约座位下座的功能 数据库:和后端组织协商扫 ...