ddlddx0000 发表于 2018-8-8 08:56:30

Python之元组

  元组的概念:Python的元组与列表类似,也是一种容器类型,不同之处在于元组的元素不能修改。
  元组使用小括号,列表使用方括号。
  Python的元组与列表类似,不同之处在于元组的元素不能修改。
  特点:支持异构、支持嵌套、不可变
  元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
  如下实例:
tup1 = ('physics', 'chemistry', 1997, 2000);  
tup2 = (1, 2, 3, 4, 5 );
  
tup3 = "a", "b", "c", "d";
  创建空元组
tup1 = ();  元组与字符串类似,下标索引从0开始,可以进行截取,组合等。
  访问元组
  元组可以使用下标索引来访问元组中的值,如下实例:
tup1=('physics','chemistry',1997,2000);tup2=(1,2,3,4,5,6,7);  
print("tup1:",tup1)
  
print("tup2: ", tup2)
  
输出结果:
  
tup1: physics
  
tup2:(2, 3, 4, 5)
  修改元组
  元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,如下实例:
#!/usr/bin/env python# -*- coding:utf-8 -*-  
tup1 = (12, 34.56);
  
tup2 = ('abc', 'xyz');
# 以下修改元组元素操作是非法的。  
# tup1 = 100;
  
# 创建一个新的元组
  
tup3 = tup1 + tup2;print(tup1+tup2)
  
输出结果:
  
(12, 34.56, 'abc', 'xyz')
  删除元组
  元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,如下实例:#!/usr/bin/env python
# -*- coding:utf-8 -*-  
tup = ('physics', 'chemistry' , 1997, 2000);
  
print(tup);
  
del tup;
  
print("After deleting tup:")
  
print(tup);
  以上实例元组被删除后,输出变量会有异常信息,输出如下所示:
  ('physics', 'chemistry', 1997, 2000)
  After deleting tup:
  Traceback (most recent call last):
  File "C:/python.py/zuoye5.12.py", line 7, in <module>
  print(tup);
  NameError: name 'tup' is not defined
  元组运算符
  与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。
  Python 表达式
  结果
  描述
  len((1, 2, 3))
  3
  计算元素个数
  (1, 2, 3) + (4, 5, 6)
  (1, 2, 3, 4, 5, 6)
  连接
  ['Hi!'] * 4
  ('Hi!', 'Hi!', 'Hi!', 'Hi!')
  复制
  3 in (1, 2, 3)
  True
  元素是否存在
  for x in (1, 2, 3): print x,
  1 2 3
  迭代
  元组索引,截取
  因为元组也是一个序列,所以我们可以访问元组中的指定位置的元素,也可以截取索引中的一段元素,如下所示:
  元组:
L = ('spam', 'Spam', 'SPAM!')  Python 表达式
  结果
  描述
  L
  'SPAM!'
  读取第三个元素
  L[-2]
  'Spam'
  反向读取;读取倒数第二个元素
  L
  ['Spam', 'SPAM!']
  截取元素
  无关闭分隔符
  任意对象 以逗号隔开,默认为元组,如下实例:
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
print('abc', -4.24e93, 18+6.6j, 'xyz');
  
x, y=1,2;
  
print("Value of x, y:", x,y)
  元组内置函数
  Python元组包含了以下内置函数
  序号
  方法及描述
  1
  len(t)计算元组元素个数。
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
fb = (1,1,2,3,5,8,13,21)
  
print(len(fb))
  输出结果为
  8
  2
  max(t) 返回元组中元素最大值。
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
fb = (1,1,2,3,5,8,13,21)
  
print(max(fb))
  输出结果为
  21
  3
  min(t) 返回元组中元素最小值。
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
fb = (1,1,2,3,5,8,13,21)
  
print(min(fb))
  输出结果为
  1
  4
  tuple(li) 将列表转换为元组
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
fb = (1,1,2,3,5,8,13,21)
  
print(tuple(fb))
  输出结果为
  (1, 1, 2, 3, 5, 8, 13, 21)
  5
  index():返回指定元素第一次出现的索引位置
  count():指定元素出现的次数
  例如:
#!/usr/bin/env python  
# -*- coding:utf-8 -*-
  
a = (1,2,3,2,1)
  
print(a.count(2))
  
print(a.index(2))
  输出结果为
  2
  1
页: [1]
查看完整版本: Python之元组