pythonコンテナタイプ

5098 ワード

一.リスト関連方法
1.リスト割付
a.あるリスト変数を直接使用して別のリスト変数に値を付与し、アドレスを付与し、値を付与した後、そのうちの1つのリストを削除すると別のリストに影響する
list1 = [1,2,3]
list2 = list1
list2.append(100)
print(list1)#[1, 2, 3, 100]

b.値を付与するときにリストのスライスまたはコピーを付与すると、新しいアドレスが生成され、新しいアドレスが割り当てられ、新しいアドレスが割り当てられます.
値を割り当てた後、2つのリスト間では相互に影響しません.
list1 = [1,2,3]
list2 = list1[:]
list2.append(100)
print(list1)#[1, 2, 3]

2.リストの方法について
1.リスト.connt(エレメント)-指定したエレメントがリストに表示された回数を取得します.2.リスト1.extend(シーケンス)-シーケンス内のすべてのエレメントをリスト1に追加します.
            list1 = [1,2,3]
            list2 = [1,2,3]
            list1.extend(list2)
            print(list1)

3.リスト.index(要素)-指定した要素の下付き文字を取得します.
  • 注意:a.要素が複数ある場合は、最初の下付きb.この要素が存在しない場合は、
  • とエラーが発生します.
    4.リスト.reverce()-リストを逆順にします
         list1 = [1,2,3]
         list1.reverce()
         print(list1)
    

    5.リスト.sort()-リストを昇順に並べ替えます(小さいものから大きいものまで).
    list1 = [5,2,3,8,1]
    list1.sort()
    print(list1)
    

    リストの降順(大から小)
        list1 = [5,2,3,8,1]
        list1.sort(reverce = Ture)
        print(list1)
    
  • 注意:a.リスト要素タイプが同じb.要素は比較演算子
  • をサポートする
    6.リスト.clear()-リストをクリア
    7.リスト.copy()-リスト内の要素を1部付与して新しいリストとリストを生成します[:]効果と同じです
    注意:このコピーは浅いコピーです.
    8.深いコピー
    import copy
    '''
    copy.copy(  ) -    
    copy.deepcopy(  ) -     (        ,                   )
    '''
    #   
    numbers1 = [1,2,3]
    numbers2 = [10,20,30]
    list1 = [numbers1,numbers2]
    list2 = copy.deepcopy(list1)
    print(list1,list2)
    list1.append(101)
    list1[0].append(100)
    print(list1)
    print(list2)
    
    numbers1 = [1,2,3]
    list2 = copy.deepcopy(numbers1)
    print(numbers1[0] is list2[0])
    print((id(numbers1[0])))
    print((id(list2[0])))
    

    二.元祖
    1.元祖(tuple)とは
  • 元祖は可変のリストであり、(秩序、可変)秩序-下付きで要素の可変を取得できる-
  • の追加削除はサポートされていない.
    2.元祖の字面量:括弧で複数の要素を囲み、複数の要素の間をよく区切る
    a.エレメントの元祖が1つしかありません:カッコ内のエレメントの後にカンマを付ける必要があります
     tuple = (10,)
    

    b.かっこを抜き、複数のデータをカンマで直接区切り、元祖値も表す
    tuple = 1,2,3,'gs'
    

    c.元祖元素の取得
    tuple = (10,20)
    print(tuple[0])
                               
    x,y = tuple
    print(x,y)
    

    3.元祖を取得する要素はリスト要素と同じである
    tuple3 = ('hs','df',2,3,4)
    print(tuple3[1])
    print(tuple3[:3])
    
    for item in tuple3:
        print(item)
    

    4.関連演算はリストと同じ
    +,*,in/not in , len(),tuple(),max/min()
    5.元祖関連メソッドはリストのcountとindexのみです.
    三.辞書
    1.辞書とは
    辞書はpythonに内蔵されたコンテナクラスのデータ型で、可変で、無秩序で、辞書の要素はキー値ペアです.
    2.辞書の字面量:括弧で囲みます.括弧の中はキー値のペアで、複数のキー値のペアの間はカンマで区切られています
  • キー値ペア-キー:値(key:value)キー-可変のデータ、一意の(一般的に文字列を使用)値-任意のタイプのデータ
  • いつ辞書を使うか1つの容器に格納されているデータが異なる意味のデータである場合(データ間の区別が必要)は辞書
  • である.
    #               :  ,  ,  ,  ,  
    student1 = {'name':'  ','tel':'123132','age':'18','score':'88'}
    print(student1['age'])
    
    dict3 = {'s':[66,55,{'x':['  ','  ']}]}
    print(dict3.get('x'))
    

    3.辞書の追加、削除、変更、検索
  • 1.辞書の値を調べる
  • a.単一値の取得
  • ディクショナリ[key]-ディクショナリのkeyに対応する値を取得します(注意:keyが存在しない場合、エラー:KeyError)
  • ディクショナリ.get(key)-ディクショナリのkeyに対応する値を取得します(keyが存在しない場合はエラーは報告されませんが、デフォルト値:None)
  • が返されます.
  • None:pythonのキーワードで、特別な値を表します.
  • dog1 = {'name':'  ','age':'5 ','color':'  ','type':'  '}
    print(dog1['name'])
    print(dog1['type'])
    print(dog1.get('age'))
    

    b.遍歴
    #                key
    for key in dog1:
        print(key,dog1[key])
    #    key value(    ,    ,     )
    for key,value in dog1.items():
        print(key,value)
    

    2.増加(キー値ペアの追加)
    辞書[key]=値-keyが存在しない場合、辞書にキー値ペアを追加します.
    dict2 = {'a':'100'}
    dict2['b'] = 250
    print(dict2)
    
    
  • ディクショナリ1.update(シーケンス)-シーケンス内の要素をキー値ペアに変換し、ディクショナリ1に
  • を追加します.
  • 注意:ここでのシーケンス要件は辞書に変換可能なシーケンスであり、シーケンスの要素は2つの要素しかない小さなシーケンス
  • である.
    # key       ,            ,      key    
    
    dict3 = {'a': '100', 'b': 250}
    dict3.update({'aa':'12','a':'45'})
    

    3.変更(keyに対応する値を修正)
  • 辞書[key]=値-keyが存在する場合にkeyに対応する値
  • を修正する.
    dict4 = {'a': '100', 'b': 250}
    dict4['b'] = 150
    print(dict4)
    

    4.削除(キー値ペアの削除)
    a.del辞書[key]-辞書のkeyに対応するキー値ペアを削除
    dict4 = {'a': '100', 'b': 250}
    del dict4['a']
    print(dict4)
    

    b.辞書.pop(key)-辞書のkeyに対応する値を取り出し、キー値ペア全体を削除する
    dict6 = {'a': '100', 'b': 250}
    c = dict6.pop('b')
    print(dict6,c)
    
    #         (         ,        )
    dict6 = {'a': '100', 'b': 250,'c': '100'}
    value = dict6.popitem()
    print(dict6)
    

    4.辞書関連演算子メソッド
  • 1.辞書は+および*
  • をサポートしていません.
  • 2.inとnot in
  • key in辞書に指定したkeyが存在するか否かを判断する
    dict1 = {'a': 12, 'b': 20, 'c': 30}
    print('a' in dict1)