4.1.3 元组的遍历

元组的遍历是指通过循环语句依次访问元组中各元素的值。遍历元组需要用到两个函数range()和len()。range()和len()都是Python的内建函数,这些函数可直接调用,不需要import语句导入模块。内建函数是Python自动导入的函数,相当于Java中的lang包。

len()计算出tuple元组中元素的个数,range()返回一个由数字组成的列表,关于列表的概念请参考4.2节。range()的声明如下所示。


range([start,] stop[, step]) -> list of integers

【代码说明】

·range()返回一个递增或递减的数字列表,列表的元素值由3个参数决定。

·参数start表示列表开始的值,默认值为0。

·参数stop表示列表结束的值,该参数不可缺少。

·参数step表示步长,每次递增或递减的值,默认值为1。

例如,range(5)返回的列表为[0,1,2,3,4]。下面【例4-3】这段代码实现了二元元组的遍历。

【例4-3.py】


01     tuple = (("apple", "banana"),("grape", "orange"),("watermelon",),("grapefruit",))
02     for i in range(len(tuple)):
03         print ("tuple[%d] :" % i, end = ' ')
04         for j in range(len(tuple[i])):
05             print (tuple[i][j], end = ' ')
06         print()

【代码说明】

·第1行代码创建了一个由4个子元组组成的二元元组tuple。

·第2行到第6行代码遍历tuple元组,输出元组中各个元素的值。tuple元组的遍历结果:


tuple[0] :  apple  banana
tuple[1] :  grape  orange
tuple[2] :  watermelon
tuple[3] :  grapefruit

此外,也可以直接使用for…in语句遍历元组,代码如下:


01     tuple = (("apple", "banana"),("grape", "orange"),("watermelon",),("grapefruit",))
02     for i in tuple:      # 遍历元组tuple
03         for j in i:      # 同样对子元组进行遍历
04             print(j)   # 依次打印出元素

【代码说明】

·第1行同样创建了一个元组。

·第2行开始遍历元组tuple。

·第3行开始对各子元组进行遍历。

·第4行打印出元素。

遍历结果:


apple
banana
grape
orange
watermelon
grapefruit