- # - *-coding: utf - 8 - *-def print_elem(container) : for elem in container: print(elem, end = ' | ') print()'''
- 在迭代过程中修改迭代序列不安全,所以要修改序列时,
- 要对它的副本做迭代,而不是原序列本身
- '''arr = [1, 2, 3, 4]
- for elem in arr[: ] : #想要修改arr,则通过arr的副本arr[: ]做迭代
- if elem == 3 : arr.insert(0, elem) print_elem(arr)''' 若要对原序列做修改,则可以通过下标的for循环实现,不要用迭代 '''
- for idx in range(len(arr)) : if arr[idx] == 3 : arr[idx] = 5 print_elem(arr)''' 想要同时得到索引和对应的值,可以使用enumerate '''
- for idx,
- elem in enumerate(arr) : print('(', idx, ',', elem, ')', sep = "", end = " ") print()''' 想要同时迭代两个序列,用zip,迭代的次数是较短序列的长度 '''arr1 = ["cx", "wb"] arr2 = ["山东", "河北", "江西"]
- for person,
- hometown in zip(arr1, arr2) : print("{0}的家乡是{1}".format(person, hometown), end = ",") print()'''循环一个序列按排序顺序,使用sorted()函数,set返回一个新的排序的列表,保留原列表不变。'''
- for elem in sorted(set(arr2)) : print(elem, end = ",") print()#原列表未改变print_elem(arr2)''' 要反向遍历一个序列,首先正向生成这个序列,然后调用 reversed() 函数。'''
- for i in reversed(range(1, 10, 2)) : print(i, end = ',')
来源: http://lib.csdn.net/snippet/python/47314