Python中元组的用法2-1

Python中的元组用英文“tuple”表示,是多个值的集合。

1 元组的定义

可以用两种方式定义元组:一种是带圆括号的方式,另一种是不带圆括号的方式。

1.1 带圆括号的方式

使用带圆括号的方式定义元组的代码如下所示:

>>> t1 = (1,2,3)

>>> type(t1)

<class 'tuple'>

从以上代码可以看出,变量t1的类型是tuple,即元组。使用圆括号定义t1时,元组中的元素用逗号分隔。

1.2 不带圆括号的方式

使用不带圆括号的方式定义元组的代码如下所示:

>>> t2 = 1,2,3

>>> type(t2)

<class 'tuple'>

>>> print(t1==t2)

True

从以上代码中可以看出,使用两种方式分别定义的元组t1和t2,是相同的。

2 访问元组中的元素

可以通过索引来访问元组中的元素。代码如下所示

>>> print(t1[0])

1

>>> print(t1[1]==t2[2])

False

需要注意的是,元组属于不可变(immutable)类型,因此不能通过索引来修改元组中的元素,代码如下所示。

>>> t1[0] = 10

Traceback (most recent call last):

  File "<pyshell#11>", line 1, in <module>

    t1[0] = 10

TypeError: 'tuple' object does not support item assignment

此时的报错信息为“类型错误:元组对象不支持赋值操作”。

相关链接1 不可变类型与可变类型:不可变类型的对象具有固定的值,如果为该对象赋新的值,则需要创建一个新对象。数字、字符串和元组都属于不可变类型。相关代码如下:

>>> str1 = "hello"

>>> id(str1)

2145021337328

>>> str1 = "world"

>>> id(str1)

2144989705648

其中,变量str1的类型是字符串,该变量的初始值是“hello”,其id为2145021337328。当为str1赋新值(“world”)后,该变量的id变为2144989705648。因为字符串是不可变类型,所以为其赋新值后,实际上创建了一个新的对象(id发生变化)来保存这个新值。同理,可变类型的对象不具有固定的值,如果为该对象赋新的值,则不需要创建一个新对象。列表、集合、字典属于可变类型,相关代码如下:

>>> list1 = [1,2,3]

>>> id(list1)

2145021492864

>>> list1[0]=10

>>> id(list1)

2145021492864

从以上代码可以看出,变量list1类型是列表,当其值发生变化时,其id不变,因为列表是可变类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值