9
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Python で環境変数を取得するときは os.getenv を使おう

Posted at

今まで Python で環境変数を取得するときと言えば、こうしていた。

import os

dsn = os.environ.get('DATABASE_URL')

しかし最近になって、 os.getenv という方法があることを知った。

参考: Pythonのos.getenvとos.environ.getの違い - Qiita

os.getenvos.environ.get と等価なので、上のコードは以下のように書き換えられる。

from os import getenv

dsn = getenv('DATABASE_URL')

公式としてはどちらかが推奨というわけではないらしいが、個人的には os.getenv の方が「なんのために os を import するのかが明確」という理由で良いと思う。

os モジュールは用途がいくつかあるため import os とだけ書いてあっても「これ何のためにいるんだっけ」というのがパッとわかりづらいが、 from os import getenv であれば「環境変数のために import しているのだな」とすぐわかって良い。

from os import environ してもいいが、 callable じゃないオブジェクトを import するのは気持ち悪い (気持ちの問題なのでこのあたりは気にしなければ別に良いのかもしれない)

9
3
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
9
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?