python式と演算子
6866 ワード
式と演算子式 変数、定数、演算子からなる様子.コンピュータが行うことができる演算には多くの種類があり、加減乗除だけでなく、演算は種類によって算術演算、比較演算、論理演算、賦値演算、メンバー演算、アイデンティティ演算、ビット演算に分けることができる.
Python演算子
演算子
説明
≪インスタンス|Instance|emdw≫
+
加算:2つのオブジェクトを加算
a + b
-
マイナス:負の数または1つの数から別の数を減算します.
a - b
*
乗算:2つの数を乗算するか、繰り返した文字列を返します.
a * b
/
除算:xをyで除算し、実数を返します.
b/a
%
型取り:除算の剰余を戻す
b % a
**
べき乗:xのy次べき乗を返します
a**b
//
取整除:返品
a//b
Python比較演算子
以下に、変数aを10、変数bを20とする.
演算子
説明
≪インスタンス|Instance|emdw≫
==
「等しい」-オブジェクトが等しいかどうかを比較します.
(a==b)Falseを返します.
!=
等しくない-2つのオブジェクトが等しくないかどうかを比較します.
(a!=b)Trueを返します.
>
より大きい-xがyより大きいかどうかを返します
(a>b)Falseを返します.
<
より小さい-xがyより小さいかどうかを返します.すべての比較演算子は、1が真、0が偽を返します.これはそれぞれ特殊な変数TrueとFalseと等価である.これらの変数名の大文字に注意してください.
(a>=
以上:xがy以上であるかどうかを返します.
(a>=b)Falseを返します.
<=
以下:xがy以下であるかどうかを返します.
(a<=b)はTrueを返します.
Python割付演算子
以下に、変数aを10、変数bを20とする.
演算子
説明
≪インスタンス|Instance|emdw≫
=
単純な代入演算子
c=a+b a+b a+bの演算結果をcに割り当てる
+=
加算代入演算子
c+=aはc=c+aに等しい
-=
減算代入演算子
c-=aはc=c-aに等しい
*=
乗算代入演算子
c*=aはc=c*aに等しい
/=
除算代入演算子
c/=aはc=c/aに等しい
%=
型取り割付演算子
c%=aはc=c%aに等しい
**=
べき乗割付演算子
c**=aはc=c**aに等しい
//=
整数割付演算子
c//=aはc=c//aに等しい
Pythonビット演算子
ビット演算子は、数字をバイナリとして計算します.Pythonの按位演算の法則は以下の通りである.
演算子
説明
&
≪ビット別演算子|By Position and Operator|oem_src≫:演算に関与する2つの値.両方の対応するビットが1の場合、そのビットの結果は1、それ以外の場合は0です.
|
ビット単位または演算子:対応する2つのバイナリビットの1つが1の場合、結果ビットは1になります.
^
ビット別または演算子:2つの対応するバイナリが異なる場合、結果は1になります.
~
ビット別逆演算子:データの各バイナリビットを逆にします.すなわち、1を0にし、0を1にします.
<<
左移動演算子:演算数の各バイナリはすべていくつかのビットを左に移動し、"<
>>
右移動演算子:">>左の演算数の各バイナリをすべて右にいくつかのビットを移動します">>右の数は移動するビット数を指定します
演算子
論理式
説明
and
x and y
ブールAND-xがFalseの場合、x and yはFalseを返します.そうでない場合、yの計算値を返します.
or
x or y
ブール"または"-xがTrueの場合、xの値を返します.そうでない場合、yの計算値を返します.
not
not x
ブール「非」-xがTrueの場合はFalseを返します.xがFalseの場合、Trueが返されます.
論理演算に対するさらなる研究:1.()がない場合、not優先度はandより高く、and優先度はorより高く、すなわち優先度関係は()>not>and>orであり、同じ優先度は左から右へ計算される.
Pythonメンバー演算子
以上の演算子に加えて、Pythonはメンバー演算子をサポートし、テストインスタンスには文字列、リスト、メタグループなどの一連のメンバーが含まれています.
演算子
説明
≪インスタンス|Instance|emdw≫
in
指定したシーケンスで値が見つかった場合はTrueを返します.そうでない場合はFalseを返します.
xはyシーケンスで、xがyシーケンスでTrueを返す場合.
not in
指定したシーケンスに値が見つからない場合はTrueを返します.そうでない場合はFalseを返します.
xはyシーケンスにありません.xがyシーケンスにTrueを返さない場合.
Pythonアイデンティティー演算子
アイデンティティー演算子2つのオブジェクトを比較するためのメモリセル
演算子
説明
≪インスタンス|Instance|emdw≫
is
isは、2つの識別子が1つのオブジェクトから参照されているかどうかを判断する
x is yは、id(x)==id(y)のように、同じオブジェクトを参照している場合はTrueを返し、そうでない場合はFalseを返します.
is not
is notは、2つの識別子が異なるオブジェクトから参照されているかどうかを判断する
x is not y、id(a)!=id(b).同じオブジェクトでない場合は結果Trueを返し、そうでない場合はFalseを返します.
Python演算子優先度
次の表には、最上位から最下位までのすべての演算子が表示されます.
演算子
説明
**
指数(最優先度)
~ + -
ビットで反転し、1元プラス記号とマイナス記号(最後の2つの方法名は+@と-@)
*/%//
型抜き
+ -
加算減算
>> <<
右シフト、左シフト演算子
&
ビット“AND”
^ |
ビット演算子
<= < >>=
比較演算子
<> == !=
イコール演算子
= %=/=//= -= += *= **=
代入演算子
is is not
アイデンティティー演算子
in not in
メンバー演算子
not and or
論理演算子
Python演算子
演算子
説明
≪インスタンス|Instance|emdw≫
+
加算:2つのオブジェクトを加算
a + b
-
マイナス:負の数または1つの数から別の数を減算します.
a - b
*
乗算:2つの数を乗算するか、繰り返した文字列を返します.
a * b
/
除算:xをyで除算し、実数を返します.
b/a
%
型取り:除算の剰余を戻す
b % a
**
べき乗:xのy次べき乗を返します
a**b
//
取整除:返品
a//b
Python比較演算子
以下に、変数aを10、変数bを20とする.
演算子
説明
≪インスタンス|Instance|emdw≫
==
「等しい」-オブジェクトが等しいかどうかを比較します.
(a==b)Falseを返します.
!=
等しくない-2つのオブジェクトが等しくないかどうかを比較します.
(a!=b)Trueを返します.
>
より大きい-xがyより大きいかどうかを返します
(a>b)Falseを返します.
<
より小さい-xがyより小さいかどうかを返します.すべての比較演算子は、1が真、0が偽を返します.これはそれぞれ特殊な変数TrueとFalseと等価である.これらの変数名の大文字に注意してください.
(a>=
以上:xがy以上であるかどうかを返します.
(a>=b)Falseを返します.
<=
以下:xがy以下であるかどうかを返します.
(a<=b)はTrueを返します.
Python割付演算子
以下に、変数aを10、変数bを20とする.
演算子
説明
≪インスタンス|Instance|emdw≫
=
単純な代入演算子
c=a+b a+b a+bの演算結果をcに割り当てる
+=
加算代入演算子
c+=aはc=c+aに等しい
-=
減算代入演算子
c-=aはc=c-aに等しい
*=
乗算代入演算子
c*=aはc=c*aに等しい
/=
除算代入演算子
c/=aはc=c/aに等しい
%=
型取り割付演算子
c%=aはc=c%aに等しい
**=
べき乗割付演算子
c**=aはc=c**aに等しい
//=
整数割付演算子
c//=aはc=c//aに等しい
Pythonビット演算子
ビット演算子は、数字をバイナリとして計算します.Pythonの按位演算の法則は以下の通りである.
演算子
説明
&
≪ビット別演算子|By Position and Operator|oem_src≫:演算に関与する2つの値.両方の対応するビットが1の場合、そのビットの結果は1、それ以外の場合は0です.
|
ビット単位または演算子:対応する2つのバイナリビットの1つが1の場合、結果ビットは1になります.
^
ビット別または演算子:2つの対応するバイナリが異なる場合、結果は1になります.
~
ビット別逆演算子:データの各バイナリビットを逆にします.すなわち、1を0にし、0を1にします.
~x -x-1
<<
左移動演算子:演算数の各バイナリはすべていくつかのビットを左に移動し、"<
>>
右移動演算子:">>左の演算数の各バイナリをすべて右にいくつかのビットを移動します">>右の数は移動するビット数を指定します
a = 0001 1111
b = 0000 1111
----------------
a&b = 0000 1111
a|b = 0001 1111
a^b = 0001 0000
~a = 1110 0000
a<<2 = 0111 1100
a>>2 = 0000 0111
>>> a = 31
>>> b = 15
>>> a & b
15
>>> a | b
31
>>> a ^ b
16
>>> ~a
-32
>>> a << 2
124
>>> a >> 2
7
演算子
論理式
説明
and
x and y
ブールAND-xがFalseの場合、x and yはFalseを返します.そうでない場合、yの計算値を返します.
or
x or y
ブール"または"-xがTrueの場合、xの値を返します.そうでない場合、yの計算値を返します.
not
not x
ブール「非」-xがTrueの場合はFalseを返します.xがFalseの場合、Trueが返されます.
論理演算に対するさらなる研究:1.()がない場合、not優先度はandより高く、and優先度はorより高く、すなわち優先度関係は()>not>and>orであり、同じ優先度は左から右へ計算される.
Pythonメンバー演算子
以上の演算子に加えて、Pythonはメンバー演算子をサポートし、テストインスタンスには文字列、リスト、メタグループなどの一連のメンバーが含まれています.
演算子
説明
≪インスタンス|Instance|emdw≫
in
指定したシーケンスで値が見つかった場合はTrueを返します.そうでない場合はFalseを返します.
xはyシーケンスで、xがyシーケンスでTrueを返す場合.
not in
指定したシーケンスに値が見つからない場合はTrueを返します.そうでない場合はFalseを返します.
xはyシーケンスにありません.xがyシーケンスにTrueを返さない場合.
Pythonアイデンティティー演算子
アイデンティティー演算子2つのオブジェクトを比較するためのメモリセル
演算子
説明
≪インスタンス|Instance|emdw≫
is
isは、2つの識別子が1つのオブジェクトから参照されているかどうかを判断する
x is yは、id(x)==id(y)のように、同じオブジェクトを参照している場合はTrueを返し、そうでない場合はFalseを返します.
is not
is notは、2つの識別子が異なるオブジェクトから参照されているかどうかを判断する
x is not y、id(a)!=id(b).同じオブジェクトでない場合は結果Trueを返し、そうでない場合はFalseを返します.
Python演算子優先度
次の表には、最上位から最下位までのすべての演算子が表示されます.
演算子
説明
**
指数(最優先度)
~ + -
ビットで反転し、1元プラス記号とマイナス記号(最後の2つの方法名は+@と-@)
*/%//
型抜き
+ -
加算減算
>> <<
右シフト、左シフト演算子
&
ビット“AND”
^ |
ビット演算子
<= < >>=
比較演算子
<> == !=
イコール演算子
= %=/=//= -= += *= **=
代入演算子
is is not
アイデンティティー演算子
in not in
メンバー演算子
not and or
論理演算子