Pythonの実行環境を調べる!!

パイプラインのツールとか、パス設定を自動でやるツールとかを作っていると、OS名とか、32bit?64bitなのかとか、ユーザー名とか、Pythonの実行環境がどうなのか、、、

知りたくありませんか!?

知っていると便利で、頻度が高そうなものをご紹介します!

OS

まずは、実行されているOSです!Windows用の処理、OSX用の処理、、、っといった分岐に必要になってきます。

標準ライブラリの「platform」を使えば、簡単に調べられます。

name = platform.system()

「Windows」「Linux」「MacOS」「Darwin」などの文字列が返ってきます∠( ゚д゚)/

BIT

3DCG制作においては、ほぼ64bit環境かと思いますが、念のため調べたい時や、プラグインの32bit用・64bit用のパスを追加したいときに必要になってきます。

標準ライブラリの「struct」を使って、「void *」のサイズを調べて8倍すると、64bitか32bitか調べられます!

bit = struct.calcsize(str('P')) * 8

「bit」が「64」なら、64bitになります∠( ゚д゚)/

ユーザー名

パイプラインツールなどでは、だれがツールを実行して作業したか重要になってくると思います。そんなときは、ログインしているユーザー名を調べると便利かと思います!

ログインしているユーザー名を調べるには、標準ライブラリの「getpass」を使用すると簡単に調べられます!

username = getpass.getuser()

ホスト名

ユーザー名ではなく、時にはホスト名(PC名)を取得したい場合もあります。どのPCから実行されたのか、、、って具合ですね!

ホスト名を調べるには、標準ライブラリの「socket」を使うと、簡単に調べられます!

hostname = socket.gethostname()

Mayaのバージョン

Mayaのバージョンを調べるには、いくつかの方法があります。

APIレベルの細かいバージョンを調べたいときは、OpenMayaを使います。たとえば、Maya2015 SP6では「201516」となります。

version = OpenMaya.MGlobal.apiVersion()

どのシリーズ(2016?2017?)といったバージョンを調べたいときは、以下のようになります。

version = OpenMaya.MGlobal.mayaVersion()