如何在Linux系统中找到已安装的python-lxml版本?
>>> import lxml
>>> lxml.__version__
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute '__version__'
>>> from pprint import pprint
>>> pprint(dir(lxml))
['__builtins__',
'__doc__',
'__file__',
'__name__',
'__package__',
'__path__',
'get_include',
'os']
>>>
似乎无法找到它
答案 0 :(得分:42)
您可以通过查看etree
>>> from lxml import etree
>>> etree.LXML_VERSION
(3, 0, -198, 0)
其他感兴趣的版本可以是:etree.LIBXML_VERSION
,etree.LIBXML_COMPILED_VERSION
,etree.LIBXSLT_VERSION
和etree.LIBXSLT_COMPILED_VERSION
。
答案 1 :(得分:8)
我假设你想从Python以编程方式确定lxml
的版本。由于lxml
不会通过顶层包装上的 typilca __version__
属性提供此信息,因此您必须使用setuptools
'{{ 1}}功能:
pkg_resources.require()
答案 2 :(得分:7)
这是另外两种方法,只需最少的输入。您可以使用命令行中的pip来执行此操作:
$ pip freeze | grep lxml
lxml==3.2.5
由于您使用apt-get
从ubuntu存储库安装,因此您也可以使用dpkg:
$ dpkg -l python-lxml
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
+++-========================-========================-================================================================
ii python-lxml 2.2.4-1 pythonic binding for the libxml2 and libxslt libraries
答案 3 :(得分:3)
您也可以使用pip
:
import pip
lxml_package = [pckg for pckg in pip.get_installed_distributions()
if pckg.project_name == 'lxml'][0] # assuming lxml is installed
print lxml_package.version
答案 4 :(得分:1)
from lxml import etree
etree.__version__
答案 5 :(得分:1)
我很惊讶没有人建议
pip show lxml