python内置数据结构之tuple

A tuple is a sequence of immutable Python objects.
**Tuples are sequences, just like lists. The only difference is that tuples can't be changed **
To write a tuple containing a single value you have to include a comma, even though there is only one value:
tup1 = (50,);

Updating Tuples:

Tuples are immutable which means you cannot update or change the values of tuple elements.
You are able to take portions of existing tuples to create new tuples as the following example demonstrates:

#!/usr/bin/python
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# Following action is not valid for tuples
# tup1[0] = 100
# So let's create a new tuple as follows
tup3 = tup1 + tup2
print tup3

Delete Tuple Elements:

Removing individual tuple elements is not possible. There is, of course, nothing wrong with putting together another tuple with the undesired elements discarded.
To explicitly remove an entire tuple, just use the del statement. Following is a simple example:

#!/usr/bin/python
tup = ('physics', 'chemistry', 1997, 2000)
print tup
del tup
print "After deleting tup : "
print tup

This will produce following result. Note an exception raised, this is because after del tup tuple does not exist any more:

('physics', 'chemistry', 1997, 2000)
After deleting tup :Traceback (most recent call last):
 File "test.py", line 9, in  print tup;NameError: name 'tup' is not defined

No Enclosing Delimiters:

Any set of multiple objects, comma-separated, written without identifying symbols, default to tuples, as indicated in these short examples:

#!/usr/bin/python
print 'abc', -4.24e93, 18+6.6j, 'xyz'
x, y = 1, 2
print "Value of x , y : ", x,y

When the above code is executed, it produces the following result:

abc -4.24e+93 (18+6.6j) xyz
Value of x , y : 1 2

注意:python的tuple可以和list互相转换,即调用各自的工厂方法即可。

你可能感兴趣的:(python内置数据结构之tuple)