天池龙珠训练营Python_Task2: 数据结构_(2)元组

简介

介绍Pthon中的基本数据结构及其数据存储与使用。

本部分包括以下内容:

  1. 列表
  2. 元组
  3. 字符串
  4. 字典
  5. 集合
  6. 序列

1.元组

  • 元组与列表类似,是一个不可变的序列。
  • 用( )括号进行创建,一经创建就不能对其进行修改,类似于字符串
  • 使用整数索引 indexing 和切片slicing获取元组中元素

2.元组创建与访问

例1:使用( )来创建一个空元组.

my_tuple = () # 创建了一个空元组
print(my_tuple,type(my_tuple)) # <class 'tuple'>

例2: 创建了一有5个元素的元组,创建不为空的元组,( )可以省略

my_tuple = (1,2,3,4,5) 

#创建不为空的元组,( )可以省略.
my_tuple = 10,20,30,40
my_tuple = 40,
 print(my_tuple , type(my_tuple))  #(40,) <class 'tuple'>

例3: 元组一经创建,不能修改.下面代码出错

my_tuple=(1,2,3,4,5)
my_tuple[3]=10   #TypeError: 'tuple' object does not support item assignment

—> 16 my_tuple[3]=10 #TypeError: ‘tuple’ object does not support item assignment

例4:创建中的一些问题

  • 1.元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。
my_tuple = (3) # 创建了一个空元组,实际 (3)被作为一个带括号的整数
print(my_tuple,type(my_tuple)) #  3   <class 'int'>

my_tuple = (3,) # 3后面加上逗号,说明是创建元组
print(my_tuple,type(my_tuple)) # <class 'tuple'>

#例如
print(8*(8))  #64,就是数8*8的计算
print(8*(8),)  #  (6, 6, 6, 6, 6, 6, 6, 6),将(6)重复了8次

例5:创建二维元组。

#直接赋值创建二维元组
x = (1, 10.31, 'python'), ('data', 11)
print(x) # ((1, 10.31, 'python'), ('data', 11))
print(x[0])# (1, 10.31, 'python')  
print(x[0][0], x[0][1], x[0][2]) # 1 10.31 python
print(x[0][0:2])  # (1, 10.31)

3.更新与删除一个元组

元组一经建立,元素的元素值不能更改,但是元素所指对象的值可以改变的。

t1=(1,2,3,[4,5,6]) 建立 元组t1,有4个元素(4行*1列)
print(t1 ) #  (1, 2, 3, [4, 5, 6])

t[3][0]=9 # t[3] 指向的是列表对象[ 4,5 ,6]。 这里t3的值没有改变,还是这个列表对象的id,但是列表中的一个元素值改了。
t1[3][0] = 9
print(t1)  # (1, 2, 3, [9, 5, 6])

#同样理解下例。week元组中
week = ('Monday', 'Tuesday', 'Thursday', 'Friday')
week = week[:2] + ('Wednesday',) + week[2:]
print(week)     # ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday')

4.元组相关的操作符

  • 等号操作符:==
  • 连接操作符: +
  • 重复操作符: +
  • 成员关系运算符in ,not in
  • 元组重复拼接:*
#例:
t1=('Python','Ali')
t2=('Ali','Python');
t3=('Python','Ali');
print(t1==t2 )    # False
print(t1==t3)     # True  只有成员、成员位置都完相同,返回True。

t4=('campus')

ts=t1+t2 
print(ts)  #首尾相接

tm=t1*3                     # ('Python', 'Ali', 'Python', 'Ali', 'Python', 'Ali') ,重复3次首尾相接
print('Python' in tm )  #True
print('Python' not in tm )  #False

5.内置方法

元组的大小和内容都不可更改,针对于元组的操作只有count 与index 两种方法

t='Python','Jave','network','Python'
print(t.count('Python'))  #2 出现的次数
print(t.index('Python')) #0  第一次出现的指标值

6.元组解构

元组的解包(解构):就是将元组当中每一个元素都赋值给一个变量
例1:解压一维元组

my_tuple = 10 , 20 , 30 , 40
a,b,c,d=my_tuple
print(a,b,c,d)  #  10 20 30 40

例2:解压二维元组

t = (1, 10.31, ('OK', 'python'))
(a, b, (c, d)) = t
print(a, b, c, d)  # 1 10.31  OK python

例3: 在对一个元组进行解包时,变量的数量必须和元组中的元素的数量一致
也可以在变量前边添加通配符[*], 下列中rest获得元组中剩余的对象

t = (1, 10.31, 'OK', 'python')
a,b,*rest=t
print (a,b,rest)  #1 10.31 ['OK', 'python']
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python元组训练可以涵盖多个方面,包括创建元组、访问元组元素、元组的切片、元组的拼接与重复、元组的遍历、元组的嵌套等等。其中,可以使用tuple()函数来创建元组,如tuple((1,2,3,4))可以创建一个包含数字1、2、3和4的元组,而tuple(('晴天','阴天','雨天'))可以创建一个包含字符串'晴天'、'阴天'和'雨天'的元组,同样,tuple((True,False))可以创建一个包含布尔值True和False的元组元组是一种有序且不可更改的集合,用于在单个变量中存储多个项目。Python中的元组使用圆括号()进行定义,例如x = ('晴天','阴天','雨天')就是一个元组的例子。元组的创建后不可更改,也就是说,元组的元素不可修改、删除或添加。 在元组中,可以通过索引或切片的方式访问元素。例如,x表示访问元组x的第一个元素,即'晴天'。同时,可以使用切片来访问元组的部分元素,如x[1:3]表示访问元组x的第二个和第三个元素,即('阴天','雨天')。此外,可以使用+运算符来拼接两个元组,如x + y可以将元组x和元组y拼接起来。 另外,元组还可以嵌套使用,即在一个元组中包含另一个元组。例如,可以使用元组来表示坐标点的集合,如((1,2),(3,4),(5,6))表示了3个坐标点的集合。通过嵌套元组,可以构建更复杂的数据结构。 总而言之,Python元组训练涵盖了创建元组、访问元组元素、元组的切片、元组的拼接与重复、元组的遍历、元组的嵌套等多个方面,通过练习这些内容,可以提升对元组的理解和应用能力。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python实训100参考答案](https://download.csdn.net/download/Bluebluesea/12400142)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [python基础训练元组](https://blog.csdn.net/weixin_62838986/article/details/122597520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值