Python言語は、次のタイプの演算子をサポートしています
- 算術演算子
- 比較(関係)演算子
- 代入演算子
- 論理演算子
- ビット演算子
- 会員事業者
- アイデンティティ演算子
- 演算子の優先順位
算術演算子のPython
以下の仮定変数aが10であり、bが変数21です。
演算子 | 説明 | 例 |
---|---|---|
+ | プラス - 2つのオブジェクトが追加されます | A + Bの出力31 |
- | 保存 - 減算することにより、別の番号または負の数に番号を与えます | A - B出力-11 |
* | - 文字列を2つの数値を乗じまたは返すが、数回繰り返されます | 210は、* bを出力します |
/ | また - yで割っxは | B / 2.1出力 |
% | モジュロ - 除算の余りを返します | B%1つの出力 |
** | パワー - のyのパワーに戻り、Xを | 21の力に** B 10 |
// | 割り切れるください - 切り捨てた整数除数に近いです | >>> 9 // 2 4 >>> - 9 // 2 - 5
|
以下の実施例は、全ての算術演算子のPythonの動作を実証します。
Pythonの比較演算子
以下の仮定変数aが10であり、bが変数20です。
演算子 | 説明 | 例 |
---|---|---|
== | イコール - 平等のためのオブジェクトを比較 | (A == B)がfalseを返します。 |
!= | 2つのオブジェクトが等しくないかどうかを比較する - それは等しくありません | (A!= B)Trueを返します。 |
> | xがyよりも大きいかどうかを返します - より大きい | (A> B)はFalseを返します。 |
< | 未満 - 戻り値xがyよりも小さいです。すべての比較演算子はfalseを返します0、真の場合は1を返します。特殊変数に相当する、それぞれ、TrueとFalse。これらの変数名の大文字と小文字に注意してください。 | (Aは、<b)はTrueを返します。 |
> = | xがyよりも大きいかどうか等しい返します - よりも小さくありません。 | (A> = B)はFalseを返します。 |
<= | 以下 - Xは以下でYであるか否かを戻り値。 | (A <= B)はtrueを返します。 |
次の例では、すべてのPythonの比較演算子の動作を示しています。
Pythonの代入演算子
以下の仮定変数aが10であり、bが変数20です。
演算子 | 説明 | 例 |
---|---|---|
= | 単純な代入演算子 | C = A + B、A + Bの演算結果Cの割り当てであります |
+ = | 加算代入演算子 | C + = AはC = C + Aと同等です |
- = | 減算代入演算子 | C - A - = AはC = Cと等価です |
* = | 乗算代入演算子 | Cに相当* = C = C * A |
/ = | 除算代入演算子 | C / A = AはC = C / Aに相当します |
%= | 剰余代入演算子 | Cの%= AはC = C%Aに相当します |
** = | 電源代入演算子 | C ** = aがC = C ** Aに相当します |
// = | 代入演算子は割り切れ取ります | C // = aがC = C // Aに相当します |
次の例では、すべてのPython代入演算子の動作を示します。
ビット演算子のPython
ビット演算子が計算バイナリデジタルであると考えられます。次のようにPythonのビットごとのアルゴリズムは次のとおりです。
演算子 | 説明 | 例 |
---|---|---|
& | ビット単位のAND演算子:操作に関与する2つの値が、対応する2つのビットが1である場合、1ビットの結果がそれ以外は0であります | (A&B)出力12、バイナリ解釈:00001100 |
| | またはビット単位演算子:対応するバイナリビットが1であるように、2つの長い、それは結果ビットです。 | (A | B)出力61、バイナリ解釈:00111101 |
^ | ビット単位の排他的OR演算子2つの異なる対応するバイナリは、結果が | (A ^ B)出力49、バイナリの解釈:00110001 |
〜 | ビット単位演算子:各バイナリデータのビット反転のために、すなわち、0~1、0~1。同様に〜のx -x-1 | (〜A)-61出力、バイナリインタプリタ:11000011、符号なし2進数の補数の形です。 |
<< | 携帯電話事業者は、左:すべてのビットの左数に対する各バイナリオペランドは、「<<」移動のビット数が上部、下部0を捨て、権利を指定します。 | 出力A << 2 240、バイナリの解釈:11110000 |
>> | 右の携帯電話演算子:さまざまなバイナリオペランドは、「>>」すべて右から左のビット数、「>>」であるビットの数は、右の指定しました | a >> 2 输出结果 15 ,二进制解释: 0000 1111 |
以下实例演示了Python所有位运算符的操作:
Python逻辑运算符
Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 | (a and b) 返回 20。 |
or | x or y | 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 | (a or b) 返回 10。 |
not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not(a and b) 返回 False |
以上实例输出结果:
Python成员运算符
除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。
运算符 | 描述 | 实例 |
---|---|---|
in | 如果在指定的序列中找到值返回 True,否则返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
not in | 如果在指定的序列中没有找到值返回 True,否则返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
以下实例演示了Python所有成员运算符的操作:
Python身份运算符
身份运算符用于比较两个对象的存储单元
运算符 | 描述 | 实例 |
---|---|---|
is | is 是判断两个标识符是不是引用自一个对象 | x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False |
is not | is not 是判断两个标识符是不是引用自不同对象 | x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。 |
注: id() 函数用于获取对象内存地址。
以下实例演示了Python所有身份运算符的操作:
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
Python运算符优先级
以下表格列出了从最高到最低优先级的所有运算符:
运算符 | 描述 |
---|---|
** | 指数 (最高优先级) |
~ + - | 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 'AND' |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not and or | 逻辑运算符 |
xMind小结:
参考资料:
https://www.runoob.com/python3/python3-data-type.html