1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

os.environ.get と os.environ[] の違いはディクショナリ操作にあり!

Last updated at Posted at 2024-12-26

Pythonで環境変数を扱う際によく使う os.environ は、辞書(ディクショナリ)風にアクセスできるオブジェクトです。
そのため、os.environ.getos.environ[] は、ディクショナリ操作の違いとして理解するのがポイントです。

主な違い

存在しない環境変数を指定した場合の動作

os.environ.get("KEY")
存在しない場合は None を返します。デフォルト値を指定することも可能です。
例:

iam_role_arn = os.environ.get("REDSHIFT_IAM_AUTH_ROLE_ARN", "default_role_arn")

os.environ["KEY"]
存在しない場合は KeyError を発生させます。値が必須の場合に便利です。
例:

iam_role_arn = os.environ["REDSHIFT_IAM_AUTH_ROLE_ARN"]  # 未設定ならエラー

使い分け

os.environ.get
環境変数が存在しなくても柔軟に対応したい場合に使用します。
例: デフォルト値を指定してプログラムを続行。

os.environ[]
必須の環境変数が設定されていない場合にエラーを発生させたい場合に使用します。
例: 設定ミスをすぐに発見したいとき。

まとめ

安全で柔軟に動作させたいなら os.environ.get。
必須チェックを徹底したいなら os.environ[]。
これらの違いを理解し、用途に応じて使い分けてみてください!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?