python 3のリスト


listの使い方(リスト)
1.list関数は文字列をlistにカットできます
In [2]: arr = list('python')
In [3]: arr
Out[3]: ['p', 'y', 't', 'h', 'o', 'n']

2.遍歴list
In [7]: for i in ['a','b','c']:
   ...:     print(i)
   ...:     
a
b
c

 
3.長さ、最大値、最小値
In [12]: arr = [1,3,5,-2,-8,357]
In [13]: print(len(arr))
6
In [14]: print(max(arr))
357
In [15]: print(min(arr))
-8

4.del listの要素を削除する
In [17]: arr
Out[17]: [1, 3, 5, -2, -8, 357]
In [18]: arr = ['c++','c','java','html']
In [19]: del arr[2]
In [20]: print(arr)
['c++', 'c', 'html']

5.list乗算可能
In [8]: arr = ['js','python','css','html']
In [9]: arr * 2
Out[9]: ['js', 'python', 'css', 'html', 'js', 'python', 'css', 'html']
In [10]: arr1 = ['mon','tus']
In [11]: arr + arr1
Out[11]: ['js', 'python', 'css', 'html', 'mon', 'tus'

6.値とスライスの変更
In [21]: arr= ['c','python','css','js','html','node']
In [22]: arr[0]
Out[22]: 'c'
In [23]: arr[-1]
Out[23]: 'node'
In [24]: arr[1] 
Out[24]: 'python'
In [25]: arr[-3]
Out[25]: 'js'

7.スライス---listの連続データの一部を取得
>>>arr= ['c','python','css','js','html','node']
>>>print arr[1:3]
['python','css']
>>>print arr[0:1]
['c']
>>>print arr[-1:-3]
[]
>>>print arr[-3:-1]
['js','html']In [26]: arr= ['c','python','css','js','html','node']In [27]: print(arr[1:3])['python', 'css']In [28]: print(arr[0:1])['c']In [29]: print(arr[-1:-4])[]In [30]: print(arr[-1:-3])[]In [31]: print(arr[-3:-1])['js', 'html']In [32]: print(arr[3:])   ['js', 'html', 'node']In [33]: print(arr[::])['c', 'python', 'css', 'js', 'html', 'node']In [34]: print(arr[:3])['c', 'python', 'css']
>>>print arr[-3:]  
['js','html', 'node']
>>>print arr[3:] 
['js','html', 'node']
>>>print arr[:3]
['c','python', 'css']
>>>print arr[:] 
['c','python', 'css', 'js', 'html', 'node']

8.スライスは値付け可能
In [35]: arr
Out[35]: ['c', 'python', 'css', 'js', 'html', 'node']
In [36]: arr[2:4]=['pc','wd'] 
In [37]: arr
Out[37]: ['c', 'python', 'pc', 'wd', 'html', 'node']

9.スライスの値付け機能は、シミュレーション要素の挿入と削除が可能
In [39]: arr
Out[39]: ['c', 'python', 'pc', 'wd', 'html', 'node']
In [40]: arr[1:1]= ['pc','wd']
In [41]: arr
Out[41]: ['c', 'pc', 'wd', 'python', 'pc', 'wd', 'html', 'node']
In [42]: arr[2:3]= [] 
In [43]: arr
Out[43]: ['c', 'pc', 'python', 'pc', 'wd', 'html', 'node']

10.append listに最後に要素を追加
In [44]: arr= ['wd','woniu','lp']
In [45]: arr.append('suiji')
In [46]: arr
Out[46]: ['wd', 'woniu', 'lp', 'suiji']

11.count統計リスト内の要素の出現回数
In [47]: arr= [2,3,4,5,6,7,8,9,43,24,234,423,423,12,2,3,4,52,2]
In [48]: arr.count(2)
Out[48]: 3

12.泡立ちソート
In [49]: arr= [1,2,3,123,11,123,421,124,2,3,4,5,6]
In [50]: for i in range(len(arr)-1):
  ....:     for l in range(len(arr)-1-i):
  ....:         if arr[l]>arr[l+1]: 
  ....:             arr[l],arr[l+1]=arr[l+1],arr[l]  
  ....:             
In [51]: arr
Out[51]: [1, 2, 2, 3, 3, 4, 5, 6, 11, 123, 123, 124, 421]

13.extend拡張ソースリスト(元のリストを変更し、値を返さない)
In [53]: b = [7,8,9,2]
In [54]: a = [1,2,3]
In [55]: b = [4,5,6]
In [56]: a.extend(b)
In [57]: b.extend(a)
In [58]: a
Out[58]: [1, 2, 3, 4, 5, 6]
In [59]: b
Out[59]: [4, 5, 6, 1, 2, 3, 4, 5, 6]

14.indexリストから値を見つけ、最初の一致する項目のインデックス位置を返す
In [60]: arr= [2,'b',3,'c',2,4,7]
In [61]: arr.index('b')
Out[61]: 1
In [62]: arr.index('c')
Out[62]: 3

15.insert割り込みarr.insert(位置、挿入内容)突然美人が来て、割り込むと、みんな断るのが耻ずかしい.
In [63]: arr= [1,2,3,4,5,6,7]
In [64]: arr.insert(3,'four')
In [65]: arr
Out[65]: [1, 2, 3, 'four', 4, 5, 6, 7]

16.popはインデックスに基づいてlistの要素を削除し、デフォルトで最後の要素を削除します(パラメータを渡さないとappendとは正反対で、popはソースリストを変更し、値を返す唯一の方法です).
In [66]: arr= [1,2,3,4]
In [67]: arr.pop()
Out[67]: 4
In [68]: arr
Out[68]: [1, 2, 3]
In [69]: arr= [1,2,3,4]
In [70]: arr.pop(2)
Out[70]: 3
In [71]: arr
Out[71]: [1, 2, 4]

17.remove値に基づいて要素を削除し、最初の一致項目を削除します(一致項目がない場合はエラー)
In [74]: arr= ['a','b','c','d']
In [75]: arr.remove('a')
In [76]: arr
Out[76]: ['b', 'c', 'd']
#remove          ValueError   
In [77]: arr.remove('asdf')-----------------------------------
ValueError: list.remove(x): x not in list

18.reverse LIST逆修正リスト、値を返さない
In [78]: arr= [1,2,3,4]
In [79]: arr.reverse()
In [80]: arr
Out[80]: [4, 3, 2, 1]

19.sortメソッドソート、list自体の変更
In [81]: arr= [-11,2,1,5]
In [82]: arr.sort()
In [83]: arr
Out[83]: [-11, 1, 2, 5]

dictのいくつかの方法