15.15. プラットフォーム—基盤となるプラットフォームの識別データへのアクセス—Pythonドキュメント

提供:Dev Guides
< PythonPython/docs/2.7/library/platform
移動先:案内検索

15.15。 プラットホーム —基盤となるプラットフォームの識別データへのアクセス

バージョン2.3の新機能。


ソースコード: :source: `Lib / platform.py`



ノート

LinuxがUnixセクションに含まれている特定のプラットフォームがアルファベット順にリストされています。


15.15.1。 クロスプラットフォーム

platform.architecture(executable=sys.executable, bits=, linkage=)

さまざまなアーキテクチャ情報について、指定された実行可能ファイル(デフォルトはPythonインタープリターバイナリ)を照会します。

実行可能ファイルに使用されるビットアーキテクチャとリンケージフォーマットに関する情報を含むタプル(bits, linkage)を返します。 両方の値が文字列として返されます。

決定できない値は、パラメータプリセットで指定されたとおりに返されます。 ビットがとして与えられている場合 、 NSsizeof(pointer) (またsizeof(long) Pythonバージョン<1.5.2)では、サポートされているポインターサイズのインジケーターとして使用されます。

この関数は、システムのfileコマンドに依存して実際の作業を行います。 これは、すべてではないにしてもほとんどのUnixプラットフォームと一部の非Unixプラットフォームで利用でき、実行可能ファイルがPythonインタープリターを指している場合にのみ利用できます。 上記のニーズが満たされない場合は、合理的なデフォルトが使用されます。

ノート

Mac OS X(およびおそらく他のプラットフォーム)では、実行可能ファイルは複数のアーキテクチャを含むユニバーサルファイルである可能性があります。

現在のインタプリタの「64ビット」を取得するには、 sys.maxsize 属性をクエリする方が信頼性が高くなります。

is_64bits = sys.maxsize > 2**32
platform.machine()
マシンタイプを返します。例: 'i386'。 値を判別できない場合は、空の文字列が返されます。
platform.node()
コンピュータのネットワーク名を返します(完全に修飾されていない可能性があります!)。 値を判別できない場合は、空の文字列が返されます。
platform.platform(aliased=0, terse=0)

基になるプラットフォームを識別する単一の文字列を、できるだけ多くの有用な情報とともに返します。

出力は、マシンで解析可能ではなく、人間が読める形式であることが意図されています。 プラットフォームによって外観が異なる場合があり、これは意図されたものです。

aliased がtrueの場合、関数は、共通名とは異なるシステム名を報告するさまざまなプラットフォームのエイリアスを使用します。たとえば、SunOSはSolarisとして報告されます。 system_alias()関数は、これを実装するために使用されます。

terse をtrueに設定すると、関数はプラットフォームを識別するために必要な最小限の情報のみを返します。

platform.processor()

(実際の)プロセッサ名を返します。例: 'amdk6'

値を判別できない場合は、空の文字列が返されます。 多くのプラットフォームはこの情報を提供しないか、 machine()と同じ値を返すだけであることに注意してください。 NetBSDはこれを行います。

platform.python_build()
Pythonのビルド番号と日付を文字列として示すタプル(buildno, builddate)を返します。
platform.python_compiler()
Pythonのコンパイルに使用されるコンパイラを識別する文字列を返します。
platform.python_branch()

Python実装SCMブランチを識別する文字列を返します。

バージョン2.6の新機能。

platform.python_implementation()

Pythonの実装を識別する文字列を返します。 可能な戻り値は、「CPython」、「IronPython」、「Jython」、「PyPy」です。

バージョン2.6の新機能。

platform.python_revision()

Python実装のSCMリビジョンを識別する文字列を返します。

バージョン2.6の新機能。

platform.python_version()

Pythonのバージョンを文字列'major.minor.patchlevel'として返します。

Python sys.versionとは異なり、戻り値には常にパッチレベルが含まれることに注意してください(デフォルトは0です)。

platform.python_version_tuple()

Pythonバージョンを文字列のタプル(major, minor, patchlevel)として返します。

Python sys.versionとは異なり、戻り値には常にパッチレベルが含まれることに注意してください(デフォルトは'0'です)。

platform.release()
システムのリリースを返します。例: '2.2.0'または'NT'値を判別できない場合は、空の文字列が返されます。
platform.system()
システム/ OS名を返します。例: 'Linux''Windows'、または'Java'。 値を判別できない場合は、空の文字列が返されます。
platform.system_alias(system, release, version)
一部のシステムで使用される一般的なマーケティング名にエイリアスされた(system, release, version)を返します。 また、混乱を招く可能性がある場合には、情報の並べ替えも行います。
platform.version()
システムのリリースバージョンを返します。例: '#3 on degas'。 値を判別できない場合は、空の文字列が返されます。
platform.uname()

かなりポータブルなunameインターフェース。 基になるプラットフォームを識別する文字列(system, node, release, version, machine, processor)のタプルを返します。

os.uname()関数とは異なり、これは追加のタプルエントリとして可能なプロセッサ情報も返すことに注意してください。

判別できない項目はに設定されています。


15.15.2。 Javaプラットフォーム

platform.java_ver(release=, vendor=, vminfo=(, , ), osinfo=(, , ))

Jythonのバージョンインターフェイス。

タプル(release, vendor, vminfo, osinfo)を返します。 vminfo はタプル(vm_name, vm_release, vm_vendor)であり、 osinfo はタプル(os_name, os_version, os_arch)です。 決定できない値は、パラメーターとして指定されたデフォルトに設定されます(すべてデフォルトでに設定されます)。


15.15.3。 Windowsプラットフォーム

platform.win32_ver(release=, version=, csd=, ptype=)

Windowsレジストリから追加のバージョン情報を取得し、OSリリース、バージョン番号、CSDレベル(サービスパック)、およびOSタイプ(マルチ/シングルプロセッサ)を参照するタプル(release, version, csd, ptype)を返します。

ヒントとして: ptype は、シングルプロセッサNTマシンでは'Uniprocessor Free'であり、マルチプロセッサマシンでは'Multiprocessor Free'です。 「無料」は、デバッグコードがないOSバージョンを指します。 また、 Checked と表示される場合もあります。これは、OSバージョンがデバッグコードを使用していることを意味します。 引数、範囲などをチェックするコード。

ノート

この関数は、MarkHammondのwin32allパッケージがインストールされている場合に最適に機能しますが、Python 2.3以降でも機能します(これのサポートはPython 2.6で追加されました)。 明らかに、Win32互換プラットフォームでのみ実行されます。

15.15.3.1。 Win95 / 98固有

platform.popen(cmd, mode='r', bufsize=None)
ポータブル popen()インターフェース。 win32pipe.popen()を好む実用的なpopen実装を見つけてください。 Windows NTでは、win32pipe.popen()が機能するはずです。 Windows 9xでは、MSCライブラリのバグが原因でハングします。


15.15.4。 MacOSプラットフォーム

platform.mac_ver(release=, versioninfo=(, , ), machine=)

Mac OSのバージョン情報を取得し、タプル(release, versioninfo, machine)として返します。 versioninfo はタプル(version, dev_stage, non_release_version)です。

判別できない項目はに設定されています。 タプルエントリはすべて文字列です。


15.15.5。 Unixプラットフォーム

platform.dist(distname=, version=, id=, supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...))

これは、 linux_distribution()によって現在提供されている機能の古いバージョンです。 新しいコードについては、 linux_distribution()を使用してください。

2つの違いは、dist()が常にsupported_distsパラメーターから取得したディストリビューションの短い名前を返すことです。

バージョン2.6以降非推奨。

platform.linux_distribution(distname=, version=, id=, supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...), full_distribution_name=1)

LinuxOSディストリビューション名の名前を判別しようとします。

supported_distsは、検索するLinuxディストリビューションのセットを定義するために指定できます。 デフォルトでは、リリースファイル名で識別される現在サポートされているLinuxディストリビューションのリストになります。

full_distribution_nameがtrue(デフォルト)の場合、OSから読み取られた完全なディストリビューションが返されます。 それ以外の場合は、supported_distsから取得した短い名前が使用されます。

タプル(distname,version,id)を返します。デフォルトでは、パラメーターとして指定された引数になります。 idは、バージョン番号の後の括弧内の項目です。 通常はバージョンコードネームです。

ノート

この関数はPython3.5以降非推奨になり、Python3.8で削除されました。 ディストリビューションパッケージのような代替手段を参照してください。

バージョン2.6の新機能。

platform.libc_ver(executable=sys.executable, lib=, version=, chunksize=2048)

ファイル実行可能ファイル(デフォルトはPythonインタープリター)がリンクされているlibcバージョンを判別しようとします。 文字列のタプル(lib, version)を返します。これは、ルックアップが失敗した場合にデフォルトで指定されたパラメーターになります。

この関数は、異なるlibcバージョンが実行可能ファイルにシンボルを追加する方法についての深い知識を持っていることに注意してください。おそらく gcc を使用してコンパイルされた実行可能ファイルでのみ使用できます。

ファイルは chunksize バイトのチャンクで読み取られてスキャンされます。