Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在测试方法中创建私有类_Python - Fatal编程技术网

Python 在测试方法中创建私有类

Python 在测试方法中创建私有类,python,Python,我试图在测试方法中做到这一点: def test_init(self): class args: def __init__(self): self.server = "myserver" self.project = "myproject" print(args.server) print(args.project) CommandFile(args) 在第一次出现时,它看起来应该可以正常工作,将

我试图在测试方法中做到这一点:

def test_init(self):
    class args:
        def __init__(self):
            self.server = "myserver"
            self.project = "myproject"

    print(args.server)
    print(args.project)
    CommandFile(args)

在第一次出现时,它看起来应该可以正常工作,将args对象传递给我的类构造函数。但由于某些原因,它不是。很确定这是一个语法问题,但我以前从未用python尝试过,所以我不确定。有什么想法吗?

您混淆了类变量和实例变量
args
是一个类,没有
server
project
属性。
args
的实例将具有这些属性,因为它们是在
\uuuu init\uuuu
中分配的,但您从不实例化对象,因此不会调用方法


如果您坚持使用标准的PEP8命名语法,那么就不太可能出现混淆,因为您将调用类
Args
和一个实例
Args
,在您为它们赋值之前,您正在引用
Args.server
Args.project
。需要36小时的部署时间。谢谢