Python で数値を特定の範囲内にクランプするにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-17 17:43:02
オリジナル
761 人が閲覧しました

How Can I Clamp Numbers Within a Specific Range in Python?

Python で数値を範囲に固定する

プログラミングでは、値が特定の範囲内に収まるようにすることが必要になることがよくあります。これは、数値のクランプ、クリッピング、または制限として知られています。

オフセットとリストに基づいて新しいインデックスを計算する次のコードを考えてみましょう。

<code class="python">new_index = index + offset
if new_index < 0:
    new_index = 0
if new_index >= len(mylist):
    new_index = len(mylist) - 1
return mylist[new_index]</code>
ログイン後にコピー

このコードは次のことを実行します。タスクは冗長で反復的です。 if-else ステートメントは、次の三項演算子を使用して 1 行に要約できます。

<code class="python">new_index = 0 if new_index < 0 else len(mylist) - 1 if new_index >= len(mylist) else new_index</code>
ログイン後にコピー

ただし、このアプローチは、思ったほど読みやすく直感的ではありません。

より洗練された方法解決策は、max() 関数と min() 関数を使用してインデックスを目的の範囲内にクランプすることです。

<code class="python">new_index = max(0, min(new_index, len(mylist)-1))</code>
ログイン後にコピー

このコードでは、インデックスが常に 0 から len(mylist)-1 の間にあることが保証されます。 new_index の値。このソリューションはコンパクトかつ明確で理解しやすいものです。

以上がPython で数値を特定の範囲内にクランプするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート