私のpython学習ノート-翌日

4630 ワード

基本データ型
Pythonの変数は宣言する必要はありません.各変数は使用前に値を割り当てる必要があります.変数が値を割り当てると、その変数が作成されます.Pythonでは、変数は変数であり、タイプはありません.変数が指すメモリ内のオブジェクトのタイプです.変数に値を割り当てるには、等号(=)を使用します.等号(=)演算子の左側は変数名で、等号(=)演算子の右側は変数に格納された値です.例:
#!/usr/bin/python3
 
counter = 100          #     
miles   = 1000.0       #      
name    = "runoob"     #    
 
print (counter)
print (miles)
print (name)

出力結果
100 1000.0 runoob
複数の変数の割り当て
Pythonは、複数の変数に同時に値を割り当てることができます.例:
a = b = c = 1

上記の例では、1の整数オブジェクトを作成し、3つの変数を同じメモリ領域に割り当てます.もちろん、次のような複数の変数に異なる値を同時に割り当てることもできます.
a, b, c = 1, 2, "runoob"

以上の例では、2つの整数オブジェクト1および2は変数aおよびbに割り当てられ、文字列オブジェクト「runoob」は変数cに割り当てられる.
標準データ型
pythonには6つの標準データ型があります
  • Number(数値)
  • String(文字列)
  • List(リスト)
  • Tuple(タプル)
  • Sets(集合)
  • Dictionary(辞書)
  • Number
    Python 3はint,float,bool,complex(複数)をサポートする.Python 3では、整数タイプintが1つしかなく、長整数型として表され、python 2のLongはありません.ほとんどの言語のように、数値タイプの付与と計算は直感的です.内蔵type()関数は、変数が指すオブジェクトタイプをクエリーするために使用できます.
    a, b, c, d = 20, 5.5, True, 4+3j
    print(type(a),type(b),type(c),type(d))
    

    しゅつりょく
    オブジェクトタイプisinstanceを判断する関数もあります.
    a = 100
    print(isinstance(a,int))
    

    しゅつりょく
    True
    isinstanceとtypeの違いはどこですか?
    class A:
        pass
    
    class B(A):
        pass
    
    print(isinstance(A(), A))
    print(type(A()) == A)
    print(isinstance(B(), A))
    print(type(B()) == A)    
    

    しゅつりょく
    True True True True False
    ご覧のように、
  • type()は、サブクラスが親タイプであるとは思いません.
  • isinstance()は、サブクラスが親タイプであると考えられます.

  • 値を指定すると、Numberオブジェクトが作成されます.
    var1 = 1
    var2 = 10
    

    del文を使用してオブジェクト参照を削除することもできます.del文の構文は、del var 1[,var 2[,var 3[...,varN]]]です.
    同じdelでは、1つ以上のオブジェクトを一度に削除できます.
    del var
    del var_a, var_b
    

    数値演算
    5 + 4  #   
    4.3 - 2 #   
    3 * 7  #   
    2 / 4  #   ,       
    2 // 4 #   ,      
    17 % 3 #    
    2 ** 5 #   
    

    注意:
  • 変数は、値を割り当てることによって異なるタイプのオブジェクトを指すことができる.
  • の数値の除算(/)は常に浮動小数点数を返し、整数を取得するには//オペレータを使用します.
  • ハイブリッド計算ではPythonが整数を浮動小数点数に変換します.

  • String(文字列)
    Pythonの文字列は、特殊文字を逆スラッシュ()で変換しながら、単一引用符(')または二重引用符(")で囲まれています.文字列の切り取りの構文フォーマットは次のとおりです.
    変数[ヘッダ下付き:末尾下付き]
    インデックス値は0を開始値、-1を終了位置とします.プラス記号(+)は文字列のコネクタで、アスタリスク(*)は現在の文字列をコピーし、続く数字はコピーの回数です.例は次のとおりです.
    #!/usr/bin/python3
     
    str = 'Runoob'
     
    print (str)          #      
    print (str[0:-1])    #                 
    print (str[0])       #           
    print (str[2:5])     #                
    print (str[2:])      #                
    print (str * 2)      #        
    print (str + "TEST") #      
    

    以上のプログラムを実行すると、次の結果が出力されます.
    Runoob Runoo R noo noob RunoobRunoob RunoobTEST
    Pythonは反スラッシュ()を使用して特殊文字を変換します.反スラッシュを変換したくない場合は、元の文字列を表すrを文字列の前に追加します.例は次のとおりです.
    print('Ru
    oob'); print('---*****---') print(r'Ru
    oob')

    しゅつりょく
    Ru oob ---*****--- Ruoob
    また、逆スラッシュ()は、次の行が前の行の継続であることを示す後続文字として使用できます.「」「…」も使えます「」または「」複数行を越える.注意、Pythonには個別の文字タイプはありません.1文字は長さ1の文字列です.C文字列とは異なり、Python文字列は変更できません.word[0]='m'などのインデックス位置に値を割り当てると、エラーが発生します.に注意
  • 反スラッシュはエスケープに使用でき、rを使用して反スラッシュをエスケープしないようにすることができる.
  • 文字列は+演算子で接続でき、*演算子で繰り返します.
  • Pythonの文字列には、左から0、右から左-1の2つのインデックス方式があります.
  • Pythonの文字列は変更できません.

  • List(リスト)
    List(リスト)は、Pythonで最も頻繁に使用されるデータ型である.リストは、ほとんどの集合クラスのデータ構造実装を完了します.リスト内の要素のタイプは、数値をサポートし、文字列にリスト(ネスト)を含めることもできます.リストは、四角カッコ([])の間にカンマで区切られた要素のリストです.文字列と同様に、リストはインデックスと切り取られ、リストが切り取られた後に必要な要素を含む新しいリストが返されます.リストの切り取りの構文フォーマットは次のとおりです.
    変数[ヘッダ下付き:末尾下付き]
    インデックス値は0を開始値、-1を終了位置とします.プラス記号(+)はリスト接続演算子、アスタリスク(*)は繰り返し操作です.次の例を示します.
    #!/usr/bin/python3
     
    list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
    tinylist = [123, 'runoob']
     
    print (list)            #       
    print (list[0])         #          
    print (list[1:3])       #               
    print (list[2:])        #                
    print (tinylist * 2)    #       
    print (list + tinylist) #     
    

    上記の例は、結果を出力します.
    ['abcd', 786, 2.23, 'runoob', 70.2] abcd [786, 2.23] [2.23, 'runoob', 70.2] [123, 'runoob', 123, 'runoob'] ['abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob']
    Python文字列とは異なり、リスト内の要素が変更可能なリストにはappend()やpop()など多くの方法が内蔵されており、後述する.注意:
  • Listは角カッコの間に書かれており、要素はカンマで区切られています.
  • は文字列と同様にリストをインデックスおよびスライスすることができる.
  • Listは+オペレータを使用して接続できます.
  • Listの要素は変更可能である.