Categories: Python

【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や特定の値の際に他の値を渡したい場合に使います。

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

ゆうまる

独学でプログラミングを勉強しているおじさん。いろんな言語を勉強したが浅く広くなためあまり仕事につながらない。また忘れっぽいため自分のブログを備忘録としても使っている。産まれてこのかたずっとネコを飼ってる生粋のネコ派。最近お腹が出てきて筋トレに奮闘中!

Recent Posts

【Dart】コンストラクタのデフォルト引数について

Dartのコンストラクタのデフォルト引数…

2週間 ago

【Unity】有料アセットを無料で手に入れる方法

この記事では、Unityの有料アセットを…

4か月 ago

【Python】任意の秒数だけ処理を一時停止する方法【sleep()関数】

この記事では、Pythonで任意の秒数だ…

1年 ago

【Python】Wordの文書の新規作成と読み書き

この記事では、Pythonを使ってWor…

1年 ago

【Python】メタクラスって結局なんなの?

この記事では、Pythonのメタクラスに…

1年 ago