Python PR

【Python】変数にデフォルト値を渡す方法

記事内に商品プロモーションを含む場合があります

この記事では、変数にデフォルト値を渡す方法を解説します。

変数に値が入っていなければデフォルト値を代入したい場合、「三項演算子」や「or演算子」を使うことで定義することができます。

ちなみに、なんの値が代入されていたら値が入っていないと見なすかは状況によって異なる。

三項演算子を使う

三項演算子を使うことで変数の値がNoneの場合にデフォルト値を渡し、それ以外の場合は、元の変数を渡すことができる。

val = デフォルト値 if val is None else val

試しに、変数の値がNoneの場合にデフォルト値を渡してみます。

# 値が存在しない場合
val = None
val = 'デフォルト値' if val is None else val
print(val)  # デフォルト値

# 値が存在する場合
val = 10
val = 'デフォルト値' if val is None else val
print(val)  # 10

値が存在しないと見なすパターンを増やしたい場合は、or演算子で条件を追加することで実装できます。以下のコードでは、0の場合もデフォルト値を代入します。

val = 0
val = 'デフォルト値' if val is None or val == 0 else val
print(val)  # デフォルト値

三項演算子を使ってif文を1行で記述する

or演算子を使う

論理演算子であるorを使うことでさらに簡単に定義できます。

val = val or デフォルト値

試しに、コードを書いてみます。

# 値が存在しない場合
val = None
val = val or 'デフォルト値'
print(val)  # デフォルト値

# 値が存在する場合
val = 10
val = val or 'デフォルト値'
print(val)  # 10

ただし、None以外の偽として判定される値が代入されている場合も値が存在しないとして見なされてしまうので注意してください。

val = 0
val = val or 'デフォルト値'
print(val)  # デフォルト値

val = []
val = val or 'デフォルト値'
print(val)  # デフォルト値

val = ''
val = val or 'デフォルト値'
print(val)  # デフォルト値

オブジェクトを比較する方法【比較演算子】

まとめ

この記事では、変数にデフォルト値を渡す方法を解説しました。

Pythonで変数を使用する場合、必ず初期化が必要なのであまり使用することがないかもしれませんが、Noneや特定の値の際に他の値を渡したい場合に使います。

それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ