2017-08-06 54 views
5

如果只導入模塊,是否可以檢查包的版本?模塊的打印版本無需導入整個包

當一個包被導入像...

import pandas as pd 

我用:

print('pandas : version {}'.format(pd.__version__)) 

打印的版本號。

如何檢查版本號如果只是導入模塊,像

import matplotlib.pyplot as plt 

from sklearn.metrics import confusion_matrix 

有什麼建議?

回答

3

我經常這樣做:

import matplotlib.pyplot as plt 
import sys 

print (sys.modules[plt.__package__].__version__) 

如果導入只是一個函數:

from sklearn.metrics import confusion_matrix as function 
import sys 

try:module_name = function.__module__[:function.__module__.index(".")] 
except:module_name = function.__module__ 

print (sys.modules[module_name].__version__) 

,如果這也不行,你可以只導入PIP和for循環中的所有模塊。

+0

謝謝!當我使用「from sklearn.metrics import confusion_matrix」時,如何檢查sklearn的版本號。 – Rene

+0

不幸的是,這在我的機器上不起作用(Windows 10,Python 3.6.2)。 – Rene

+0

如果你喜歡我的回答,你能接受嗎? @Rene – Veltro