clip_values
1.0.0
clip_values 数値をクリップして、それらが下限と上限内にあることを確認することが非常に一般的なタスクです。
たとえば、RGBの色を扱っている場合は、各チャンネルを0〜255にする必要があります。ショップの販売を扱っている場合は、0〜1の間に必要です。
さて、このすべてのクリッピングを行う必要がある場合、どのクリッピングに代わるものが好きですか?
clip_values.clipを使用しますclip 、クリッピング操作に人間が読みやすい構文を提供します。
from clip_values import clip
colour_channel = clip ( colour_channel ). between_ ( 0 ). and_ ( 255 )
discount = clip ( discount ). between_ ( 0 ). and_ ( 1 )
player_x_pos = clip ( player_x_pos ). between_ ( 0 ). and_ ( SCREEN_WIDTH ) clip代替品は、最も簡単で読みやすいものです!それを他の2つの一般的な選択肢と比較してください。
if: ... elif: ...ブロックは読みやすいですが、さらに4倍のコードを取り上げます。
if colour_channel < 0 :
colour_channel = 0
elif colour_channel > 255 :
colour_channel = 255
if discount < 0 :
discount = 0
elif discount > 1 :
discount = 1
if player_x_pos < 0 :
player_x_pos = 0
elif player_x_pos > SCREEN_WIDTH :
player_x_pos = SCREEN_WIDTH max (またはその逆)でminをチェーンするのは短いですが、これは読みにくいものであり、2つの連続した呼び出しの間の相互作用を把握するために数分max費やす必要がありますmin
colour_channel = min ( 255 , max ( 0 , colour_channel ))
discount = max ( 0 , min ( 1 , discount ))
player_x_pos = min ( SCREEN_WIDTH , max ( 0 , player_x_pos ))