高度な Python 演算子の応用: シフト演算子、論理演算子、および演算子の優先順位に関する実践ガイド
Python は、さまざまな分野で広く使用されている言語です。レベルのプログラミング言語であり、演算子の使用法を習得することが非常に重要です。 Python では、基本的な算術演算子に加えて、ビットごとの演算子、論理演算子など、他の多くの種類の演算子も提供しています。この記事では、これらの演算子の応用を詳しく掘り下げ、読者が演算子をよりよく理解して使用できるように、具体的なコード例を示します。
1. ビット シフト演算子
ビット シフト演算子は、2 進数に対してシフト演算を実行する演算子です。 Python には、左シフト (>)、循環右シフト (
左シフト (
コード例:
num = 10 # 二进制表示为 1010 result = num << 2 # 左移2位,结果为 101000 print(result) # 输出:40
右シフト (>>): 数値のバイナリ表現を指定された桁数だけ右にシフトし、次を使用します。空の数字は 0 で埋められます。 n ビット右シフトは、元の数値を 2 の n 乗で割ることと同じです。
コード例:
num = 10 # 二进制表示为 1010 result = num >> 2 # 右移2位,结果为 10 print(result) # 输出:2
循環右シフト (<<<): 数値のバイナリ表現を指定された数だけ右に循環シフトします。桁、つまり数値の右端のnビットを左端に移動し、残りのビットを右に移動します。桁数が m の場合、数値を n ビット右に循環的にシフトすることは、数値を右に n 回周期的にシフトすることと同じです。
コード例:
num = 13 # 二进制表示为 1101 result = num <<< 2 # 循环右移2位,结果为 0110 print(result) # 输出:6
2. 論理演算子
論理演算子は、ブール値を比較および演算するために使用される演算子です。 Python には、and (and)、or (or)、not (not) の 3 つの論理演算子が用意されています。これら 3 つの論理演算子の具体的な定義と応用を次に示します。
And (および): 両方のオペランドが true の場合、結果は true になり、それ以外の場合、結果は false になります。
コード例:
a = True b = False result = a and b print(result) # 输出:False
Or (または): 少なくとも 1 つのオペランドが true の場合、結果は true になり、それ以外の場合、結果は false になります。
コード例:
a = True b = False result = a or b print(result) # 输出:True
Not (not): オペランドを反転します。オペランドが true の場合、結果は false になります。オペランドが false の場合、結果は false になります。結果は真実です。
コード例:
a = True result = not a print(result) # 输出:False
3. 演算子の優先順位に関する実践ガイド
Python では、異なる演算子には異なる優先順位があります。式に同時に複数の演算子が含まれる場合、それらの実行順序を決定するために特定のルールに従う必要があります。 Python における演算子の優先順位に関する一般的なルールは次のとおりです。
コード例:
a = 10 b = 5 c = 2 result = (a + b) * c # 先执行加法运算,再执行乘法运算 print(result) # 输出:30 result = a + b * c # 先执行乘法运算,再执行加法运算 print(result) # 输出:20 result = a > b and b < c # 先执行比较运算符,再执行逻辑运算符 print(result) # 输出:False
概要:
この記事では、変位演算子、論理演算子、および演算子の優先順位のアプリケーションを紹介することで、読者に高度な情報を提供します。 Python の一次演算子に変換します。これらの演算子の適用をマスターすると、複雑なプログラムをより適切に記述し、コードの効率と読みやすさを向上させることができます。この記事があなたの勉強や仕事に役立つことを願っています!
以上がPython 演算子の深い理解: ビットごとの演算子、論理演算子、および演算子の優先順位に関する実践的なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。