Python入门教程--元组

一、语法

(elem1,elem2...)

元组与列表类似,不同之处在于

1).元组的元素不能修改。

2).元组使用小括号,而列表使用方括号。

可以创建一个空的元组

tup=()

注意:元组中只包含一个元素时,需要在元素后面添加逗号。

tup=(50,)

>>> print ('hi')*4
hihihihi
>>> print ('hi',)*4
('hi', 'hi', 'hi', 'hi')
>>> 

>>> tup1=(23)
>>> print tup1
23
>>> type(tup1)
<type 'int'>
>>> tup2=(23,)
>>> print tup2
(23,)
>>> type(tup2)
<type 'tuple'>
>>> 

二、操作元组
1.访问元组
可以使用下标索引来访问元组中的值。下标索引从0开始。

>>> tup1=('a','b','c','d')
>>> print "tup1[1]:",tup1[1]
tup1[1]: b
>>> 
>>> tup1=('a','b','c','d')
>>> print tup1[-2]
c
>>> print tup1[1:]
('b', 'c', 'd')
>>> 
2.修改元组

元组中的元素值是不允许修改的,但是可以对元组进行连接组合。

>>> tup1=('a','b','c','d')
>>> print "tup1[1]:",tup1[1]
tup1[1]: b
>>> tup1[2]='e'

Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    tup1[2]='e'
TypeError: 'tuple' object does not support item assignment
>>> tup2=('e','f','g')
>>> print tup1+tup2
('a', 'b', 'c', 'd', 'e', 'f', 'g')
>>> 
3.删除元组

可以使用del语句删除整改元组。

>>> del tup2
>>> print tup2

Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    print tup2
NameError: name 'tup2' is not defined
>>> 
三、元组运算符

表达式结果描述
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迭代

四、元组内置函数

cmp():比较两个元组元素

如果比较的元素是同类型的,则比较其值,返回结果。

如果两个元素不是同一种类型,则检查它们是否是数字。

  • 如果是数字,执行必要的数字强制类型转换,然后比较。
  • 如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")
  • 否则,通过类型名字的字母顺序进行比较。

如果有一个列表首先到达末尾,则另一个长一点的列表"大"。

如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。

>>> tup1=('a','b','c','d')
>>> tup2=('e','f','g','h')
>>> print cmp(tup1,tup2)
-1
>>> 
len():计算元组元素个数

>>> tup1=('a','b','c','d')
>>> print len(tup1)
4
>>> 
max():返回元组中元素最大值

>>> tup3=('a',30,50,'e',"string")
>>> print max(tup3)
string
>>> 
min():返回元组中元素最小值

>>> tup3=('a',30,50,'e',"string")
>>> print min(tup3)
30
>>> 
tuple():将列表转换为元组

>>> list1=[1,2,3,4,5,6]
>>> print tuple(list1)
(1, 2, 3, 4, 5, 6)
>>> 



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值