当前位置: 首页 > 文档资料 > Python 学习笔记 >

tuple

优质
小牛编辑
108浏览
2023-12-01

解释tuple 元组的意思

tuple名字叫做元组,

name = ( "number1", "number2", "number3" )

它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但不能赋值成另外的元素。

不可变的tuple有什么意义?因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。

注意

括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。

所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义

其余的使用情况跟list是一样的。

Python 对比golang

其实这个让我想起了golang 在golang中,数组是不能被改变的,但是slice 切片是可以改变的,也就是说

  • list相当于 slice
  • tuple相当于 array

不过js中,并没有不能改变的数组。

对比一下

Go
a0 := [12]int{1, 2, 3} array
a1 := [...]int{1, 2, 3} array
a2 := []int{1, 2, 3} slice
Python
#/usr/bin/env Python3
a = [1, 2, 3] list
a = (1, 2, 3) tuple
js
const a = [] OK了没有什么限制,异常灵活,也可以说异常容易出错。
shell
declare -a a
a 数组就被创建了

或者是

a[0]=121
直接使用,不使用创建,这样也是创建的一种办法。