一些入门基础知识
元组: Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
- 创建和访问一个元组:
>>> tup1 = ('physics', 'chemistry', 1997, 2000)
>>> tup2 = (1, 2, 3, 4, 5 )
>>> tup3 = "a", "b", "c", "d"
>>> tup4 = () #创建空元组
>>> tup5 = (50,) #元组中只包含一个元素时,需要在元素后面添加逗号
>>> tup2[:]
(1, 2, 3, 4, 5)
>>> tup2[:3]
(1, 2, 3)
- 更新元组:
元组中的元素值是不允许修改的,但可以对元组进行连接组合
>>> tup1 = (1,2,3)
>>> tup2 = (3,4,5)
>>> tup1[0] = 10
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <module>
tup1[0] = 10
TypeError: 'tuple' object does not support item assignment
>>> tup3 = tup1 + tup2
>>> tup3
(1, 2, 3, 3, 4, 5)
>>> tup3 = tup3[:2] + ('a',) + tup3[2:] #插入一个元素
>>> tup3
(1, 2, 'a', 3, 3, 4, 5)
>>> tup3 = tup3[:2] + (10,) + tup3[2:]
>>> tup3
(1, 2, 10, 'a', 3, 3, 4, 5)
- 删除元组:
元组中的元素值是不允许删除的,可以使用del语句来删除整个元组
>>> del tup3
>>> tup3
Traceback (most recent call last):
File "<pyshell#28>", line 1, in <module>
tup3
NameError: name 'tup3' is not defined
- 无关闭分隔符:
任意无符号的对象,以逗号隔开,默认为元组,如:
>>> x,y = 1,2
>>> x,y
(1, 2)
>>> 'abc', -4.24e93, 18+6.6j, 'xyz'
('abc', -4.24e+93, (18+6.6j), 'xyz')
- 元组运算符:
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 | 迭代 |
- 元组内置函数:
cmp() :
描述:用于比较两个元组元素 cmp(tuple1, tuple2)
参数:tuple1 -- 比较的元组。tuple2 -- 比较的另外一个元组。
返回值:如果比较的元素是同类型的,则比较其值,返回结果。
如果两个元素不是同一种类型,则检查它们是否是数字:
1、如果是数字,执行必要的数字强制类型转换,然后比较。
2、如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")3、否则,通过类型名字的字母顺序进行比较。
如果有一个列表首先到达末尾,则另一个长一点的列表"大"。如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。
方法或函数 | 描述 | 语法 | 参数 | 返回值 |
len() | 计算元组元素个数 | len(tuple) | tuple -- 要计算的元组 | 返回元组元素个数 |
max()/min() | 返回元组中元素最大值/最小值 | max/min(tuple) | tuple -- 指定的元组 | 返回元组中元素最大值/最小值 |
tuple() | 将列表转换为元组 | tuple( seq ) | seq -- 要转换为元组的序列 | 返回元组 |