Python演算子と式


作者:billy版権声明:著作権は作者の所有で、商業転載は作者に連絡して授権を得て、非商業転載は出典を明記してください
演算子
演算子はいくつかの特殊な記号で、主に科学計算、比較サイズ、論理演算などに用いられる.Pythonの演算子には、主に算術演算子、賦値演算子、比較演算子、論理演算子、ビット演算子が含まれます.演算子を使用して、異なるタイプのデータを一定の規則に従って接続する式を式と呼びます.次に、最もよく使われる演算子について学びます.
  • 算術演算子算術演算子は4則演算を処理する記号であり、数字の処理に最も多く適用される.一般的な演算子は次の表に示されています.
  • 演算子
    説明
    例を挙げる
    結果
    +
    プラス
    12.45 + 15
    27.45
    -
    減らす
    4.56 - 0.26
    4.3
    *
    乗ずる
    5 * 3.6
    18.0
    /
    を除いて
    7/2
    3.5
    %
    余剰を求める、すなわち除算の余剰を返す
    7 % 2
    1
    //
    整数を取る、すなわち商の整数部分を返す
    7//2
    3
    **
    べき乗、すなわちxのy次方を返す
    2 ** 4
    16、すなわち2^4
    注意事項:
  • 使用%剰余を求める場合、除数(2番目の操作数)が負数であれば、得られた結果も負の値である.
  • 除算(/または//)演算子と余剰演算子を使用する場合、除算は0にできません.そうしないと異常が発生します.
  • Python 2で除算演算子を使用する.xでは、オペランドがすべて整数である場合、結果としてPython 3においても整数をとる.xでは、結果は浮動小数点数、
  • 賦値演算子賦値演算子は、主に変数などに賦値するために使用される.一般的な代入演算子は次の表に示されています.
  • 演算子
    説明
    例を挙げる
    展開形式
    =
    単純な代入演算
    x = y
    x = y
    +=
    に値を付ける
    x += y
    x = x + y
    -=
    減額
    x -= y
    x = x - y
    *=
    乗算代入
    x *= y
    x = x * y
    /=
    割付
    x/= y
    x = x/y
    %=
    剰余金をとる
    x %= y
    x = x % y
    **=
    べき乗代入
    x **= y
    x = x ** y
    //=
    さいせいわりあて
    x//= y
    x = x//y
  • 比較(関係)演算子比較演算子は、変数や式の結果を大小、真偽など比較するための関係演算子でもあり、比較結果が真であればTrue、偽であればFalseを返します.一般的な比較演算子は次の表に示します.
  • 演算子
    さぎょう
    例を挙げる
    結果
    >
    より大きい
    ‘a’ > ‘b’
    False
    <
    より小さい
    156 < 456
    True
    ==
    に等しい
    ‘c’ == ‘c’
    True
    !=
    等しくない
    ‘y’ != ‘t’
    True
    >=
    以上
    479 >= 426
    True
    <=
    以下
    62.45 <= 45.5
    False
  • 論理演算子論理演算子は真と偽の2つのブール値を演算し、演算後の結果は依然としてブール値である.一般的な論理演算子は次の表に示されています.
  • 演算子
    意味
    使用法
    結合方向
    and
    ロジックと
    op1 and op2
    左から右
    or
    論理または
    op1 or op2
    左から右
    not
    ろんりひ
    not op
    右から左
  • ビット演算子ビット演算子は、数値をバイナリ数として計算するため、演算を実行するデータをバイナリに変換してから演算を実行する必要があります.よく使用されるビット演算子は次の表に示されています.
  • 演算子
    えんざんほうそく
    「ビット単位と」演算'&'
    2つのオペランドのバイナリ表現は,対応するビットがすべて1の場合にのみ結果ビットが1であり,そうでなければ0である.2つの操作数の精度が異なる場合、結果の精度は精度の高い操作数と同じである.
    ビット単位または演算'|'
    2つのオペランドのバイナリ表現は,対応するビットが0の場合のみ結果ビットが0であり,そうでない場合は1である.2つの操作数の精度が異なる場合、結果の精度は精度の高い操作数と同じである.
    ビット別OR演算'^'
    2つのオペランドのバイナリ表現が同じ(同じ0または同じ1)場合、結果は0であり、そうでない場合は1である.2つの操作数の精度が異なる場合、結果の精度は精度の高い操作数と同じである.
    「ビットごとに逆をとる」演算'~'
    オペランド対応バイナリの1を0、0を1に変更します.
    左シフト演算子'<
    1つのバイナリオペランドを指定したビット数だけ左に移動し、左(ハイエンドビット)がオーバーフローしたビットは破棄され、右(ローエンドビット)の空席は0で補充されます.左シフト演算子は2を乗じたn次方程式に相当する.
    右シフト演算子'>'
    1つのバイナリオペランドを指定したビット数だけ右に移動すると、右側(ローエンドビット)のオーバーフローしたビットは破棄され、左(ハイエンドビット)の空席を埋める場合、最上位が0(正)の場合、左側の空席は0、最上位が1(負)の場合、左側の上位が1になります.右シフト演算子は2で割ったn次方に相当する.
    シフト演算子の速度が特に速いため、プログラムで式に2を乗じたり除算したりするn乗の場合、シフト演算子が一般的に用いられる
  • 演算子の優先度演算子の優先度とは、アプリケーションでどの演算子が先に計算され、どの後に計算されるかを指し、数学の4つの演算子の「先に乗算し、後で加算する」のと同じ理屈である.同じ優先度のオペレータは、左から右の順に行われ、カッコが使用されている場合はカッコ内の演算が先に実行されます.演算子の優先度は次の表に示します.
  • を選択します.
    説明
    優先度
    **
    べき乗
    ~、+、-
    マイナスをとる
    *、/、%、//
    算術演算子
    +、-
    算術演算子
    <>
    シフト演算子の左シフトと右シフト
    &
    シフト演算子のビット単位と
    ^
    シフト演算子のビット別排他的OR
    |
    シフト演算子のビット単位または
    、>=、!=、==
    比較演算子
    式の演算子が多い場合は、カッコ'()'を使用して実行順序を定義し、演算子のエラーを回避します.
    条件式
    プログラム開発では,式の結果に基づいて条件付きで付与されることが多い.例:
    a = 10
    b = 6
    if a > b:
        r = a
    else:
        r = b
    

    上記の例は条件式を用いて簡略化できる
    a = 10
    b = 6
    r = a if a > b else b
    

    条件式のルール:中間の条件を先に計算し(a>b)、結果がTrueの場合if文の左側の値を返し、そうでない場合elseの右側の値を返します.