首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >即使类在模块中,也无法实例化它

即使类在模块中,也无法实例化它
EN

Stack Overflow用户
提问于 2014-11-07 11:54:25
回答 2查看 556关注 0票数 1

我想使用pycvss,所以我通过pip安装了它。

但是,实例化Cvss()类失败:

代码语言:javascript
复制
>>> import pycvss
>>> c = pycvss.Cvss()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'Cvss'

在检查模块时,它看起来确实是空的:

代码语言:javascript
复制
>>> dir(pycvss)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__']

但是,当我检查python在哪里查找模块时:

代码语言:javascript
复制
>>> print(pycvss.__file__)
/usr/local/python-2.7.8/lib/python2.7/site-packages/pycvss/__init__.pyc

看起来是这样,

/usr/local/python-2.7.8/lib/python2.7/site-packages/pycvss/pycvss.py

确实定义了` `Cvss():

代码语言:javascript
复制
(...)
class Cvss(object):
  """Common Vulnerability Scoring System.

  Use this class to set base, temporal and environmental vectors and
  compute scores.
  Cf module level documentation for sample usage.
  """

  _BASE_VECTOR = (AV, AC, Au, C, I, A)
(...)

我肯定遗漏了一些显而易见的东西,但我越看越少(其他模块都很好,包括pip安装的模块,比如requests)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-07 12:00:36

该项目中的文件是空的。您需要导入模块

代码语言:javascript
复制
from pycvss import pycvss

c = pycvss.Cvss()

文档对此相当不清楚;我会在项目中提交一个文件问题

就我个人而言,我想在这里为__init__.py文件添加一行:

代码语言:javascript
复制
from pycvss import Cvss

并更新文档以说明如何导入该类。

请注意,该项目期望图书馆可用。如果您没有使用Python3.4或更高版本,您也必须安装后端包

票数 2
EN

Stack Overflow用户

发布于 2014-11-07 11:59:46

pycvss是一个包,您需要将它作为

代码语言:javascript
复制
import pycvss.pycvss
c = pycvss.pycvss.Cvss()

或者去做:-

代码语言:javascript
复制
from pycvss import pycvss
c = pycvss.Cvss()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26800710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档