访问类的方法时出错 - python包

时间:2015-04-27 12:29:30

标签: python python-2.7 setuptools

我已将一个简单的包上传到https://testpypi.python.org/pypi。 我已按照以下步骤进行操作,

python setup.py register -r https://testpypi.python.org/pypi

python setup.py sdist upload -r https://testpypi.python.org/pypi

然后将此软件包下载到本地并使用install命令执行setup.py. (包网址https://testpypi.python.org/pypi/printlistonlynew/0.1) 然后成功安装了包。

这是包的结构和代码,

│   setup.py
│
└───listprint
        stack.py
        __init__.py

stack.py的内容是,

class Xyz:

    def __init__(self,):
        pass

    def printList(self):
        print [i for i in range(0,10)]

当我尝试从已安装的软件包导入方法printList时,它会给我错误,

AttributeError: Xyz instance has no attribute 'printList'

这是我试图执行的代码,

from listprint import stack
x=stack.Xyz()
print x
print x.printList()

我在这做错了什么?任何命名空间问题?

1 个答案:

答案 0 :(得分:2)

我已经下载了您的文件,并且您有缩进问题。因为您正在混合制表符和空格,所以Python正在考虑将printList作为 __init__内的嵌套

仅限空格。