13

一部の Python パッケージは、プログラムがインストールされているバージョンを取得する方法を提供します。例えば

>>> import numpy
>>> numpy.version.version
'1.5.0'

しかし、私はそうする方法を見つけることができませんpywin32。調べるにはどのような良い方法がありますか?

4

3 に答える 3

7

マークの公式の回答を次のように改作: http://mail.python.org/pipermail/python-win32/2010-April/010404.html

import os
import distutils.sysconfig

pth = distutils.sysconfig.get_python_lib(plat_specific=1)
ver = open(os.path.join(pth, "pywin32.version.txt")).read().strip()

amd64ビルドではCraigの答えが機能しなくなったためです。

于 2012-02-28T10:31:18.613 に答える
4

これは私がこれまでに考え出した唯一の方法です。pywin32.version.txtPython インストールのディレクトリで呼び出されたファイルを見つけ、site-packagesその内容を読み取ります。

def get_pywin32_version():
    for path in sys.path:
        if os.path.isdir(path):
            filename = os.path.join(path, 'pywin32.version.txt')
            if os.path.isfile(filename):
                with open(filename) as f:
                    pywin32_version = f.read()
                pywin32_version = pywin32_version.strip()
                return pywin32_version

ただし、これは公式の API とはほど遠いものです。pywin32のどのバージョンがそのファイルをインストールしたpywin32.version.txtか、またそれが今後も継続する可能性が高いかどうかはわかりません。

于 2010-11-04T01:00:48.320 に答える