元组
元组是一个不可变列表。元组一旦创建就不能以任何方式修改。 
为什么需要元组?
 
- 在保护任何数据免遭更改(有意或无意)的情况下。
 
- 元组比列表占用更少的内存空间并且速度更快。
 
- 从一个函数返回多个值。
 
- 元组可以用作字典键(稍后会详细介绍)。
 
 
 
 
创建元组
1 种方式:类似于列表,但带有括号
<表>
<正文>
 
1个
2个
3 
 | 
一 = (1,2,3,4,5)
打印(类型(a))   # 类“元组”
打印(一)         # (1, 2, 3, 4, 5)
 | 
 
表>
 2 种方式: 使用  tuple() 函数
<表>
<正文>
 
1个
2个
3个
 
 | 
b = 元组((1,2,3,4,5))
打印(类型(b))   # <类“元组”>
打印(b)         # (1, 2, 3, 4, 5)
 | 
 
表>
  
 
你要记住!
- 元组是一个不可变的列表。
 
- 元组的元素可以是不同的类型。
 
- 您可以使用 
tuple() 函数或通过在括号中列出元素来创建元组。 
  
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            元组特征
1)可以不用括号给元组赋值/ 
例如,您可以像这样创建一个元组:
<表>
<正文>
 
1个
2个
3个
 
 | 
a = 1,2,3,4,5    
print(a[3])    # 4   元组的一个元素可以像列表的元素一样被访问, 
               # 通过在方括号中指定元素索引.
 | 
 
表>
 
2) 要声明包含一个元素的元组,您需要使用尾随逗号:
<表>
<正文>
 
1个
2个
3个
4 
 | 
a = 'a';   
b = 'b', 
打印(类型(b))  #<类'元组>> 
print(type(a))   # <class 'str>
 | 
 
表>
 
3)可以将元组元素的值赋值给各个变量:
<表>
<正文>
 
1个
2个
3 
 | 
我的元组 = (1, 2, 3, 4, 5)
a, b, c, d, e = my_tuple
打印(c)    #3
 | 
 
表>
 
下划线  _ 可以用作不必要的变量
<表>
<正文>
 
1个
2个
3 
 | 
我的元组 = (1, 2, 3)
a, _, _ = my_tuple
打印(一)    #1
 | 
 
表>
 
变量个数必须与数值匹配元组的元素!
 
4) 元组可以包含各种嵌套元素。在这种情况下,当引用嵌套的   元素时,您必须使用额外的方括号
<表>
<正文>
 
1个
2 
 | 
my_tuple = (('a', 'b', 'c'), [1, 2], ((1, 'a'; ), ('b', 'c')))
print(my_tuple[2][1]) # ('b', 'c')
 | 
 
表>  
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            指的是元素。嵌套元组
元组可以包含其他元组作为元素。此外,列表、字符串等也可以用作元组的元素。 
访问元素类似于访问列表的元素,在方括号中指定元素的索引。索引从零开始。 
引用嵌套元素时,必须使用额外的方括号。
 
 
my_tuple = (('a', 'b', 'c'), [1, 2], ((1, 'a'; ), ('b', 'c')))
打印(我的元组[2][1])    # ('b', 'c') 
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            比较元组
比较元组时:  
- 数字按值比较;  
- 按字典顺序排列的字符串;  
- 如果相同位置的元素相等,则比较以下元素;  
- 元素的比较将发生在第一个不等式之前;  
- 比较时,元素必须转换为相同类型(不能比较数字和字符串)。 
 
 例子
<表>
<正文>
 
1个
2个
3个
4个
5个
6个
7
8个
9
10
十一
12
 
 | 
A=4
B=8
C = 'a',
D = 'z',
E = (14, '最大', '最小')
F = (14, '最大', '最小')
K=999
打印(A < B)    #真
打印(C < D)    #真
打印(E > F)    #真
打印(K < F)    #错了
打印(C < K)    # 类型错误:'<'不支持
                # 在“str”实例之间和“int”
 | 
 
表>  
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            切片
切片可以像列表一样执行。 
应该记住,通过索引或切片 ( slice) 获取元素,我们不会以任何方式更改元组,我们只是复制其中的一部分以供进一步使用(例如,用于打印, 一些计算等.p.).
 
 切片语法
my_tuple[start:stop:step]  # 开始、停止和步进 
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            元组连接
连接元组以创建新对象是可能的(连接,类似于字符串)。
<表>
<正文>
 
1个
2个
3个
4 
 | 
x = (1,2,3,4)
y = (5,6,7,8)
z = x + y 
打印(z)  # (1, 2, 3, 4, 5, 6, 7, 8)
 | 
 
表>
 
在乘法运算期间,元组会重复多次(类似于字符串乘法)。
<表>
<正文>
 
1个
2个
3 
 | 
x = (1,2,3,4)
z = x*2
print(z)  # (1, 2, 3, 4, 1, 2, 3, 4)
 | 
 
表>
  
 
删除一个元组
元组操作和方法类似于列表操作和方法。除了那些改变元组元素的。 
由于不变性,无法添加或删除包含在  tuple  中的元素。但是,可以使用  del 运算符删除元组本身。
<表>
<正文>
 
1个
2 
 | 
学生 = (2007, 'Ivan', 'Ivanov', '9-A', False)
德尔学生
 | 
 
表>  
            
            
                  
            
             
                    
            
                 
      
                  
           | 
	
		
 
     
              
              
                  
                       
            
                
          
            使用元组的方法
使用元组的方法类似于使用列表的方法,除了改变元组的方法。由于元组的不变性,此类方法不可用。它们可以通过创建一个新的元组来应用。
  
 
元组排序示例
您可以使用  sorted() 函数轻松地对元组进行排序。
<表>
<正文>
 
1个
2个
3个
4 
 | 
一 = (5, 3, 2, 1, 4)
打印(排序(a))    # [1, 2, 3, 4, 5] 
a = tuple(排序(a)) 
打印(一)    # (1, 2, 3, 4, 5) 
 | 
 
表>
 
请注意, append()、 extend()、 remove() 等方法不适用于 元组 和<代码>弹出()代码>。  
            
            
                  
            
             
                    
            
                 
      
                  
           |