List是python中的基本資料結構之一,和Java中的ArrayList有些類似,支援動態元素的增加。list還支援不同類型的元素在一個列表中,List is an Object。
最基本的建立一個列表的方法
myList = ['a','b','c']
在python中list也是對象,所以他也有方法和屬性,在ptython解譯器中 使用help(list)可以查看其文檔,部分開放方法如下:
在接下來的代碼中,將使用這些方法:
1 # coding=utf-8 2 3 # Filename : list.py 5 # Date: 2012 11 20 6 7 8 9 # 建立一個list方式10 heatList = ['wade','james','bosh','haslem']11 tableList = list('123') #list方法接受一個iterable的參數12 13 print 'Miami heat has ',len(heatList),' NBA Stars , they are:'14 15 #遍曆list中的元素16 for player in heatList:17 print player,18 19 20 #向list添加元素21 heatList.append('allen') #方式一:向list結尾添加 參數object22 print '\nAfter allen join the team ,they are: '23 print heatList24 25 heatList.insert(4,'lewis') #方式二:插入一個元素 參數一:index位置 參數二:object26 print 'After lewis join the team, they are:'27 print heatList28 29 heatList.extend(tableList) #方式三:擴充列表,參數:iterable參數30 print 'After extend a table list,now they are :'31 print heatList32 33 #從list刪除元素34 heatList.remove('1') #刪除方式一:參數object 如有重複元素,只會刪除最靠前的35 print" Remove '1' ..now '1' is gone\n",heatList36 37 heatList.pop() #刪除方式二:pop 選擇性參數index刪除指定位置的元素 預設為最後一個元素38 print "Pop the last element '3'\n",heatList39 40 del heatList[6] #刪除方式三:可以刪除制定元素或者列表切片41 print "del '3' at the index 6\n",heatList42 43 44 #邏輯判斷45 46 #統計方法 count 參數:具體元素的值47 print 'james apears ',heatList.count('wade'),' times'48 49 #in 和 not in 50 print 'wade in list ? ',('wade' in heatList)51 print 'wade not in list ? ',('wade' not in heatList)52 53 #定位 index方法:參數:具體元素的值 選擇性參數:切片範圍54 print 'allen in the list ? ',heatList.index('allen')55 #下一行代碼會報錯,因為allen不在前三名裡56 #print 'allen in the fisrt 3 player ? ',heatList.index('allen',0,3)57 58 #排序和反轉代碼59 print 'When the list is reversed : '60 heatList.reverse()61 print heatList62 63 print 'When the list is sorted: '64 heatList.sort() #sort有三個預設參數 cmp=None,key=None,reverse=False 因此可以制定排序參數以後再講65 print heatList66 67 #list 的分區[start:end] 分區中不包含end位置的元素68 print 'elements from 2nd to 3rd ' , heatList[1:3]
以上都是list最基本的操作,當然還包括和其他資料結構之間的轉操作,註:python sort用的是穩定的排序演算法