小甲鱼python零基础入门 学习笔记 ——元组

元组:戴上了枷锁的列表

1,  定义元组

简单来说:元组就是不能修改值的列表,即不可变的列表。如果需要存储的一组值在程序的整个生命周期内不变,可使用元组。

元组与列表在代码上的区别:元组的定义用(),类型是tuple//列表的定义用[],类型是list

>>> name_list=['peter', 'william', 'jack', 'tom', 'alice', 'jim']
>>> type(name_list)
<class 'list'>
>>> name_list=('peter', 'william', 'jack', 'tom', 'alice', 'jim')
>>> type(name_list)
<class 'tuple'>

注:如果只是创建一个单个元素的tuple,必须要在其后加一个“,”,这样子系统才能确认是元组,而不是int整型

示例:

>>> temp=(1)
>>> temp
1
>>> type(temp)
<class 'int'>
>>> temp=()
>>> temp=(1,)
>>> type(temp)
<class 'tuple'>

元组与列表在修改元素上的差别示例:

>>> name_list=['peter', 'william', 'jack', 'tom', 'alice', 'jim']
>>> type(name_list)
<class 'list'>
>>> name_list[0]='peterking'
>>> name_list
['peterking', 'william', 'jack', 'tom', 'alice', 'jim']#列表可以修改元素

>>> name_list=('peter', 'william', 'jack', 'tom', 'alice', 'jim')
>>> type(name_list)
<class 'tuple'>
>>> name_list[0]='peterking'
Traceback (most recent call last):
  File "<pyshell#79>", line 1, in <module>
    name_list[0]='peterking'
TypeError: 'tuple' object does not support item assignment   #报错,元组无法修改元素

2,遍历元组中所有的值

   与列表相同,可以使用for循环来遍历元组中的所有值

>>> name_list=('peter', 'william', 'jack', 'tom', 'alice', 'jim')
>>> for name in name_list:
	print(name)

peter
william
jack
tom
alice
jim

3,修改元组变量

   如果需要对元组内元素的值进行修改,则需要重新定义整个元组

>>> number_list=(1,2,3,4,5)
>>> number_list[4]='6'
Traceback (most recent call last):
  File "<pyshell#87>", line 1, in <module>
    number_list[4]='6'
TypeError: 'tuple' object does not support item assignment
>>> number_list=(1,2,3,4,6)
>>> number_list
(1, 2, 3, 4, 6)

如果我们需要增加元素进元组,可以采用这样的方式。需要注意的是加入的元素的表达必须要是元组类型,否则会报错。

>>> temp=('peter', 'william', 'jack', 'tom', 'alice', 'jim')
>>> temp=temp[:2]+'john'+temp[2:]
Traceback (most recent call last):
  File "<pyshell#91>", line 1, in <module>
    temp=temp[:2]+'john'+temp[2:]
TypeError: can only concatenate tuple (not "str") to tuple
               
>>> temp=temp[:2]+('john')+temp[2:]
Traceback (most recent call last):
  File "<pyshell#92>", line 1, in <module>
    temp=temp[:2]+('john')+temp[2:]
TypeError: can only concatenate tuple (not "str") to tuple

>>> temp=temp[:2]+('john',)+temp[2:]
>>> temp
('peter', 'william', 'john', 'jack', 'tom', 'alice', 'jim')
>>> 

4,Python的回收机制 

  1,变量名没有固定分配内存空间

  2,如果没有标签,就会被回收

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值