【Python】 リスト

リスト(配列) の 取り扱い方
リストとは、C言語で言う配列や構造体にあたります。Pythonの型は動的型付けなので、数値や文字列が入ると入った型に変わります。
リスト​
      
リスト(配列)の取り扱い方を説明します。

      初期化
   
    y = [  ]
      配列名 = [    ]   
 
      例えば
  
            y[1,2,3]    3つの要素  ならば y[0]     y[1]     y[2]     3つの入れ物が用意されます。

                    y[添字] 0から始まり、添字は配列の何番目の位置かを示します。

リストへ要素を追加できます。
   
       リスト ∔ リスト
  変数 ∔ リスト
  リスト × 定数

リストは 型は単独でも、混合でも使えます。(1次元)

test024.py
alist=[]
print(" 1 ",alist)
blist=[0,1]
print(" 2 ",blist)
blist=[0,1,2]+[3,4]
print(" 3 ",blist)
blist=blist+[5,6]
print(" 4 ",blist)
clist=[7,8]
clist=blist+clist
print(" 5 ",clist)
dlist=[2,3,4]
print(" 6 ",dlist)
dlist=[2,3,4]*2
print(" 7 ",dlist)
blist +=[10,11,12]
print(" 8 ",blist)
blist +=(15,16,17)
print(" 9 ",blist)
elist=["abcd","efgh","ijkl"]
print("10 ",elist)
flist=[1,"太郎",15.3]
print("11 ",flist)

結果 
   

配列   (2次元)
  
このデータを扱います。
1 2 3 4
6 7 8 9

   
配列を考えると
   

x[a][0] x[a][1] x[a][2] x[a][3]
x[0][b] 1 2 3 4
x[0][0] x[0][1] x[0][2] x[0][3]
x[1][b] 6 7 8 9
x[1][0] x[1][1] x[1][2] x[1][3]
    
test025.py
alist = [[0, 1, 2, 3],[ 6, 7, 8, 9]] 
print(alist)
print(alist[0][0]) 
print(alist[1][1]) 
print(alist[1][3])
blist = [[[10,11,12],[21,22,23]], [[30,31,32],[41,42,53]]]
print(blist)

結果
   


リスト 参照 追加 削除 等
リスト 参照 追加 削除 等について説明します。

リスト(配列)の参照

    • リストの全参照
          リスト
          リスト[:]   
           
        
    • 部分参照 開始値 ≦ 区間 < 終了値
       リスト[
      開始値:終了値]     
        
    • 部分参照  開始値 ≦ 区間 
       リスト[開始値:]
            
    • 部分参照 区間 < 終了値   
           リスト[:終了値]
          
    • 指定参照  1:10:2 なら [  1  3  5  7  9 ]      リスト[開始添字:終了添字:増減量]
            開始添字:終了添字:増減量
            最小値 : 最大値  : 1
        
    • リストは 型は単独でも、混合でも使えます。

《 test026.py 》

alist=[10,11,12,13,14,15,16,17,18,19]
print(" 1 ",alist)
print(" 2 ",alist[:])
print(" 3 ",alist[0])
print(" 4 ",alist[5])
print(" 5 ",alist[-2])
print(" 6 ",alist[2:5])
print(" 7 ",alist[-4:-2])
print(" 8 ",alist[:1])
print(" 9 ",alist[5:])
print("10 ",alist[0:8:2])
print("11 ",alist[::2])

結果
    

添字

0 1 2 3 4 5 6 7 8 9
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1
要素 10 11 12 13 14 15 16 17 18 19
リストで使える機能の追加 削除 等

    • リストの最後尾に要素を追加
         リスト.append(要素)
          
    • リストの最後尾に要素を連結
         リスト.extend(要素)
        
    • リストの指示した添字部に要素を追加
           リスト.insert(添字,要素

《 test027.py 》

alist=[10,11,12,13,14]
print(" 1 ",alist)
alist.append(5)
print(" 2 ",alist)
alist.append([6, 7])
print(" 3 ",alist)
alist.extend([9])
print(" 4 ",alist)
alist.extend([20,21])
print(" 5 ",alist)
alist.insert(3,55)
print(" 6 ",alist)
  
結果
    
  

      • リストの指定した部分の要素を削除
              del
         リスト[添字]
              del リスト[開始値:終了値]       開始値 ≦ 区間 < 終了値
            
      • リストの内の全削除
             リスト.clear()  
            

      • ()の時はリストの最後尾
        添字の番号部を削除
            リスト.pop(添字)
<< test028.py >>
alist=[10,11,12,13,14,15,16,17,18,19,20]
print(" 1 ",alist)
del alist[2]
print(" 2 ",alist)
del alist[3:6]
print(" 3 ",alist)
del alist[3:6:2]
print(" 4 ",alist)
alist.clear()
print(" 5 ",alist)
blist=[9,10,11,12,10,11,12,13]
blist.pop()
print(" 6 ",blist)
blist.pop(6)
print(" 7 ",blist)
blist.remove(11)
print(" 8 ",blist)

結果
   
      • リストを内容をコピー
                リスト2 = リスト1     
                リスト.copy()
            
      • リスト内の要素と値を比較して同じ値の回数を返す
              リスト.count()
           
      • リスト内の要素と値を比較して最初に出る同じ値の添字を返す
              リスト.index()
           
      • リスト内の最大値
              max(リスト)
          
      • リスト内の最小値
              min(リスト)
           
      • リスト内の要素の個数
              len(リスト)
           
      • リスト内の要素と値を比較してある場合はTrueを、異なる場合はFalseを返す
               値  in リスト
            
      • リスト内の要素と値を比較してある場合はFalseを、異なる場合はTrueを返す
               値  not in リスト

<< test029.py >>
alist=[10,11,12,13,14,15,16,17,18,19,20]
print(" 1 ",alist)
blist=alist
print(" 2 ",blist)
clist=alist.copy()
print(" 3 ",clist)
alist=[1,1,2,3,4,1,2,5,4,2,1]
print(" 4 ",alist)
a=alist.count(2)
print(" 5 ",a)
b=alist.index(4)
print(" 6 ",b)
c=max(alist)
print(" 7 ",c)
d=min(alist)
print(" 8 ",d)
e=len(alist)
print(" 9 ",e)
f=1 in alist
print("10 ",f)
g=6 in alist
print("11 ",g)
h=1 not in alist
print("12 ",h)
i=6 not in alist
print("13 ",i)

結果
   

 

    • リストの昇順
            リスト.sort()
            リスト.sort(reverse= False)
            リスト=sorted(リスト,reverse=False)

    • リストの降順
            リスト.reverse()
            リスト.sort(reverse=True)
            リスト=sorted(リスト,reverse=True)
<< test030.py >>
alist=[15,11,12,13,14]
alist.sort()
print(" 1 ",alist)
alist.reverse()
print(" 2 ",alist)
alist.sort(reverse= False)
print(" 3 ",alist)
alist.sort(reverse=True)
print(" 4 ",alist)
alist=sorted(alist,reverse=False)
print(" 5 ",alist)
alist=sorted(alist,reverse=True)
print(" 6 ",alist)
         
         結果  
   

 

目次