python之元组
一.元组定义
元组(tuple)使用小括号()来定义,它是不可变数据类型,它的元素不可变,但元素的元素是可变的,比如tuple中一个元素为list列表时,list中的元素是可变的
# 在定义tuple时,元素就必须确定下来
aa = (1, "ok")
# aa[0] = 2 tuple元素不能修改
print(aa)
# 在定义只有一个元素的tuple时,注意要在第一个元素后加上",",aa=(2,),否则会被认为是赋值aa=(2)
aa = (2, ) # tuple
print(type(aa))
aa = (2) # int,被认为是一个数字
print(type(aa))
二.理解元素不可变
# tuple的元素指向不变,但指向的内容可变
classes = [1, 2]
tuple1 = ("a", "b", classes) # tuple1指向classes没有变,但classes本身的内容是可以变的
print(tuple1)
classes[0] = 11
classes[1] = 22
print(tuple1) 输出如下
('a', 'b', [1, 2])
('a', 'b', [11, 22])
三.元组遍历
元组是有序的,有下标,可以切片,拼接,可以通过for循环遍历获取每一个元素
tuple1 = (1, 2, 3, 4, 5) for i in tuple1:
print(i) 输出如下
1
2
3
4
5
四.元组的切片
常见切片如下
tuple1 = (1, 2, 3, 4, 5) print(tuple1[::]) # 获取所有元素
print(tuple1[::-1]) # 倒序打印元组所有元素,tuple1元素本身不变
print(tuple1[1:3]) # 获取下标为1, 2的元素(2, 3)
print(tuple1[:4]) # 不写起始位置,默认从头开始,0,1,2,3,(1,2,3,4)
print(tuple1[3:]) # 不写结束位置,默认一直截到最后,3,4,(4,5) 输出结果如下
(1, 2, 3, 4, 5)
(5, 4, 3, 2, 1)
(2, 3)
(1, 2, 3, 4)
(4, 5)
五.元组的常见方法使用
tuple1 = (1, 2, 3, 4, 5) # 获取元组元素个数,即元素长度
print(len(tuple1))
print(tuple1.__len__()) 输出结果如下
5
5
tuple1 = (1, 2, 3, 2, 4, 5) print(tuple1.count(2)) # .count(e),获取元素e在元组中出现的次数
print(tuple1.index(2)) # .index(e),获取元素e在元组中第一次出现时的下标 输出结果如下
2
1
六.元组的应用场景
1.作为函数的参数和返回值
元组中的数据通常类型都不不同的,所以通过for遍历使用的很少
2.格式化输出时使用的就是一个元组
print("my name is %s, now is %d years old" % ("xiaoming", 23))
也可以这样写
user_info = ("xiaoming", 23)
print("my name is %s, now is %d years old" % userinfo)
或者这样写
user_info = "my name is %s, now is %d years old" % ("xiaoming", 23)
print(user_info)
3.保证数据安全
如果为了保证数据不被人修改,可以定义为元组类型。
python之元组的更多相关文章
- python列表元组
python列表元组 索引 切片 追加 删除 长度 循环 包含 定义一个列表 my_list = [] my_list = list() my_list = ['Michael', ' ...
- Python:元组操作总结
Python的元组和列表类似,不同之处在于元组中的元素不能修改(因此元组又称为只读列表),且元组使用小括号而列表使用中括号,如下: tup1=('physics','chemistry',1997,2 ...
- python的元组数据类型及常用操作
Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup1 = ('physi ...
- 【277】◀▶ Python 列表/元组/字典说明
目录: 前言 一.访问列表中的值 二.更新列表 三.删除列表元素 四.Python 列表脚本操作符 五.Python 列表函数 & 方法 参考:Python 列表(List)使用说明 列表截取 ...
- python的元组
Python的元组和列表很相似,只是元组一旦定义就无法修改,比如定义一个学生的元组: names = ('alex','jack') print(names)#('alex', 'jack') pri ...
- 一起学Python:元组
元组 Python的元组与列表类似,不同之处在于元组的元素不能修改.元组使用小括号,列表使用方括号. >>> aTuple = ('et',77,99.9)>>> ...
- python基础——元组(tuple)
Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. tuple1 = () tuple2 = ...
- python day4 元组/字典/集合类知识点补充
目录 python day4 元组/字典/集合类知识点补充 1. 元组tuple知识点补充 2. 字典dict的知识点补充 3. 基本数据类型set 4. 三元运算,又叫三目运算 5. 深复制浅复制 ...
- Python tuple 元组
Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup1 ...
- Python 列表/元组/字典总结
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...
随机推荐
- .Net IOC框架入门之三 Autofac
一.简介 Autofac是.NET领域最为流行的IOC框架之一,传说是速度最快的一个 目的 1.依赖注入的目的是为了解耦. 2.不依赖于具体类,而依赖抽象类或者接口,这叫依赖倒置. 3.控制反转即 ...
- 转载:.Net 程序集 签名工具sn.exe 密钥对SNK文件 最基本的用法
.Net 程序集 签名工具sn.exe 密钥对SNK文件 最基本的用法 阐述签名工具这个概念之前,我先说说它不是什么: 1.它不是用于给程序集加密的工具,它与阻止Reflector或ILSpy对程序集 ...
- PHP输出缓存ob系列函数
ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额外的负担. ob的基本原则:如果 ...
- php中echo、print、print_r、var_dump、var_export区别
(1) print和echo是语言结构,echo输出多个值,多个值之间用逗号分隔,无返回值:print只能输出一个值,有返回值.echo和print输出整型和字符串,没法打印布尔型,如果true,打印 ...
- 在Pythonfor循环中如何获取循环次数?
在Python的for循环里,循环遍历可以写成: for item in list: print item 它可以遍历列表中的所有元素,但是有什么方法可以知道到目前为止我循环了多少次? 想到的替代方案 ...
- query string parameters 、 Form Data 、 Request Payload
微信小程序ajax向后台传递参数的时候总是报400错误 然后看了一下network 发现是query string parameters,但是我写的header如下 header:{ "Co ...
- 饮冰三年-人工智能-Python-23 Python PyCharm 使用中常见的问题
一:软件工具使用中遇到的问题 1:AttributeError: module 'pip' has no attribute 'main'问题 处理方法: a:找到JetBrains\PyCharm ...
- Nginx 和 IIS 实现动静分离(转)
转载地址:https://www.cnblogs.com/paul8339/p/5825201.html 动静分离,说白了,就是将网站静态资源(HTML,JavaScript,CSS,img等文件)与 ...
- windows下创建MySQL定时备份与删除脚本
今天在windows服务器上面写了一个MySQL定时任务,备份呢与删除 rem *****************************Code start********************* ...
- UOJ#218. 【UNR #1】火车管理 线段树 主席树
原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ218.html 题解 如果我们可以知道每次弹出栈之后新的栈顶是什么,那么我们就可以在一棵区间覆盖.区间求和 ...