0

我有两个文件如下:

文件1.py

    import os

    import config
  class session():

    def __init__(self):
         self.appCoordinates = (0, 0, 1024, 768)


def startApp(self):
    session_launch = App("Packets and Protocols")
    if not session_launch.window():
        path1= "C:\\Program Files (x86)\\ABC\\XYZ\\RT900"
        ver=config.version
        path2="bin\\Rt900.exe"
        path3=os.path.join(path1,ver)
        path4=os.path.join(path3,path2)
        App.open(path4);
        wait(25)
    session_launch.focus(); wait(10)

文件2.py

    import File1
    class ospf():

         def _init_(self):
                  Add = File1.session()
          self.appCoordinates = (0, 0, 1024, 768)

         def startOspf(self):
            Add.startApp()

每当我尝试导入函数 ie,startApp 从 File1.py 到 File2.py。我收到以下错误消息。

“NameError:未定义全局名称‘Add’”

我能知道是什么问题吗?

4

2 回答 2

0

您需要成为班级Add成员。ospf

像这样的东西:

import File1
class ospf():
     def _init_(self):
         self.Add = portadd.n2xSession()
         self.appCoordinates = (0, 0, 1024, 768)

     def startOspf(self):
         self.Add.startApp()
于 2013-02-13T11:49:31.023 回答
0

而不是使用“添加”,只需使用“self.Add”。它使变量添加类/对象的成员。

>>> class Complex:
...     def __init__(self, realpart, imagpart):
...         self.r = realpart
...         self.i = imagpart
...
>>> x = Complex(3.0, -4.5)
>>> x.r, x.i
(3.0, -4.5)

也许这个链接有助于很好地理解“自我”的含义。

于 2013-02-13T11:59:51.510 回答