首页 > 代码库 > 《转》python学习(8)元组

《转》python学习(8)元组

转自 http://www.cnblogs.com/BeginMan/p/3156235.html

一、元组特性

1、类似列表,但不可变类型,正因如此,它可以做一个字典的key
2、当处理一组对象时,这个组默认是元组类型(老写错"元祖")
3、所有的多对象,逗号分隔的,没有明确用符号定义的这些都默认为元组类型

 1 >>> abc‘,1,2,x,True
 2 (abc‘, 1, 2, x, True)
 3 >>> x,y =1,2
 4 >>> x,y
 5 (1, 2)
 6 -----------------------------
 7 def foo1():
 8    return obj1,obj2,obj3
 9 
10 
11 def foo2():
12    return [obj1,obj2,obj3]
13 
14 def foo3():
15    return (obj1,obj2,obj3)

4、逗号不要少,尽量都写,即使只有一个元素

>>> type((x))
<type str‘>
>>> type((x,))
<type tuple‘>
>>> tup = (x)
>>> type(tup)
<type str‘>
>>> tup = (x,)
>>> type(tup)
<type tuple‘>

觉得不错:hi.baidu.com/wuxinzy/item/c2c3cd428c99aa01896d10a7

1.   无法向元组添加元素。元组没有  append() 或 extend() 方法。 
2.   不能从元组中删除元素。元组没有 remove() 或 pop()  方法。 
3.   可以 在元组中查找元素,由于该操作不改变元组。 
4.   还可以使用 in 运算符检查某元素是否存在于元组中。 那么元组有什么好处呢? 

?   元组的速度比列表更快。如果定义了一系列常量值,而所需做的仅是对它进行遍历,那么请使用元组替代列表。 
 ?   对不需要改变的数据进行“ 写保护” 将使得代码更加安全。使用元组替代列表就像是有一条隐含的 assert 语句显示该数据是
?   一些元组可用作字典键(特别是包含字符串、数值和其它元组这样的不可变数据的元组)。列表永远不能当做字典键使用,因为列表不是不可变的。

《转》python学习(8)元组