【第三章】Python基础之元组tuple

元组tuple

1、一个有序的元素组成的集合

2、使用小括号 ( ) 表示

3、元组是不可变对象

初始化

tuple() -> empty tuple

tuple(iterable) -> tuple initialized from iterable's items

复制代码
t1 = () # 空元组
t2 = (1,) # 必须有这个逗号
t3 = (1,) * 5     输出:(1, 1, 1, 1, 1)
t3 = (1) * 5   	 	输出:5
t4 = (1, 2, 3)
t5 = 1, 'a'
t6 = (1, 2, 3, 1, 2, 3)
t7 = tuple() # 空元组
t8 = tuple(range(5))
t9 = tuple([1,2,3])

索引

索引和列表规则一样,不可以超界

复制代码
输入:x = (1,2,3,4,'abc',range(5),[],(),None)
	 x
输出:(1, 2, 3, 4, 'abc', range(0, 5), [], (), None)


输入:x[0],x[-1]
输出:(1, None)



输入:x[0] = 100				#TypeError: 'tuple'对象不支持项赋值
输出:TypeError: 'tuple' object does not support item assignment 

查询

方法和列表一样,时间复杂度也一样。index、count、len等

复制代码
输入:x.index(2)
输出:1

输入:x.index(0)				#ValueError: tuple.index(x): x不在元组中
输出:ValueError: tuple.index(x): x not in tuple 

x.count(1)
1

len(x)
9

增删改

元组元素的个数在初始化的时候已经定义好了,所以不能为元组增加元素、也不能从中删除元素、也不 能修改元素的内容。

但是要注意下面这个例子

复制代码
输入:(1,)+(1,)
输出:(1, 1)


输入:(1,3) * 3
输出:(1, 3, 1, 3, 1, 3)

输入:((1,),) * 3
输出:((1,), (1,), (1,))

输入:a = ([3],) * 3
	 a[0][0] = 500
	 a

输出:([500], [500], [500])
相关推荐
我要神龙摆尾3 分钟前
约定俗成的力量--java中泛型的意义和用法
java·开发语言
漂洋过海的鱼儿8 分钟前
Qt-界面子类(1)
开发语言·qt
C++ 老炮儿的技术栈10 分钟前
不调用C++/C的字符串库函数,编写函数strcmp
c语言·开发语言·c++·人工智能·windows·git·visual studio
阿拉伯柠檬11 分钟前
网络层协议IP(三)
linux·网络·网络协议·tcp/ip·面试
幸福的达哥14 分钟前
Python多线程、多进程、协程、锁、同步、异步的详解和应用
开发语言·python
Hgfdsaqwr18 分钟前
内存泄漏检测与防范
开发语言·c++·算法
m0_7066532325 分钟前
Python生成器(Generator)与Yield关键字:惰性求值之美
jvm·数据库·python
Miracle&26 分钟前
在Linux VirtualBox中安装系统失败
linux·运维·服务器
熬夜敲代码的小N26 分钟前
Python基础入门:环境配置全指南+核心语法解析
开发语言·python
嫂子开门我是_我哥27 分钟前
第十八节:项目实战2:简易通讯录(面向对象+文件持久化实现)
开发语言·python