日々精進

新しく学んだことを書き留めていきます

localeについて

localeとは言語、単位、時刻など国毎に異なる設定をまとめたもの。 C localeはデフォルトのlocale。基本アメリカに合わせた設定になるはず。 LANG, LC_TYPE, LC_ALLなどいくつかの環境変数を使って設定する。 en_US.UTF-8のように 言語_国.エンコーディング方式 の形で指定する。

eng-entrance.com

qiita.com

上記によると、localeはlibcの機能。つまり、C言語の標準関数を使ってメッセージを表示する時に、 標準関数が内部でLANG等の環境変数を参照して表示する言語を切り替えたりフォーマットを変えたりしている。 CPythonなどはC言語で実装されているのでlocaleの影響を受ける。もしCの標準関数を使わずにメッセージを表示しているところがあればそれはlocaleの影響を受けない。

参考:

qiita.com