实例: li = [1 , 2 , 3 , 4 , 5 , 6] for x in li: print x, print '' print '------------------------------' i = 0 while i < len(li): print li[i], i += 1
实例:li = [1 , 2 , [ 3 , 4 , 5 , 6] , 7 , 8, [9 , 10] ] 按1~10读出 False: for x in li: for y in x: print y, True: for x in li: #结果 1 2 3 4 5 6 7 8 9 10 if type(x) == list: for y in x: print y, else : print x, type函数的使用:判断数据类型
想一想:li = [1 , 2 , [ 3 , 4 , 5 , 6] ,( 7 , 8 ), [9 , 10] ] 按1~10读出
列表里牵扯元祖又该如何遍历?
2、清空列表
实例: l1 = [] l1[:] = [] del l1[:]
3、列表模拟栈和队列(是两种非常有用的数据结构)
实例: (1)、栈:先进后出 li = [1 , 2 , 3 , 4 , 5 , 6] li.append(7) #相当于进栈,push()函数 li.pop() #相当于C语言里的top()和pop()函数 print '--------------------------' (2)、队列:先进先出 li = [1 , 2 , 3 , 4 , 5 , 6] li.pop(0) #取队列首元素,相当于pop()和front()函数 li.append(7) #相当于进队,push()函数
4、列表去重(由麻烦到简单)
(1)、pop()去重
借助pop函数删除每个数以后的所有与他重复的数
实例: li = [ 1, 1 , 2 , 3 , 1 , 1 , 2 , 3 , 5 , 7 , 9 , 1 , 2] i = 0 while i <len(li): pf = li.index(li[i]) if li.count(li[i]) > 1: li.pop(li.index(li[i] , pf + 1)) i -= 1 i += 1 print li
实例: li = [ 1, 1 , 2 , 3 , 1 , 1 , 2 , 3 , 5 , 7 , 9 , 1 , 2] li2 = [] for x in li: if x not in li2: li2.append(x) li = li2[:] print li
实例: li = [ 1, 1 , 2 , 3 , 1 , 1 , 2 , 3 , 5 , 7 , 9 , 1 , 2] li = list(set(li)) print li