我有一个名为Camera
的类,它使用Python在Linux上初始化网络摄像头,但我遇到了该类的问题。我想在多个程序中使用该类。我让班级成为单身人士。当我在同一个程序中多次访问该类时,它可以完美地工作,它返回一个实例。但是当我从其他程序访问该类时,它会创建其他实例。例如:
class Camera():
__new__():
.....
.....
print "__new__ called"
__init__():
get_frame();
print "__instance created"
c1 = Camera()
c2 = Camera()
Results:
__new__ called
__instance created
__new__ called
但我想从多个程序访问该类,如:
main1.py
main2.py
main3.py
我想从多个程序访问此类,我希望该类只初始化一次,然后将相同的实例返回给调用此类的每个程序。
有没有办法创建Camera
类的程序或服务,我单独运行该类,我将从其他程序访问类的元素?
请举例说明如何将该类作为应用程序或服务运行,以及如何在其他程序中调用该运行类的元素。
答案 0 :(得分:0)
只创建一个实例,然后将其导入其他程序。
Camera.py:
class Camera():
def __init__(self):
print "__instance created"
def someFunc(self):
print "Cool stuff here!"
c1 = Camera()
file2.py:
import Camera
c2 = Camera.c1
要调用方法,请使用c2.someFunc()
。