【问题标题】:Is my Python code a mess? [closed]我的 Python 代码是不是一团糟? [关闭]
【发布时间】:2011-07-07 10:10:03
【问题描述】:

这个问题的范围内有两个文件,我们称它们为file1.pyfile2.py

我已将file2.py 导入file1.py

我在file1.py 中实例化了一个类,我想在file2.py 中访问它。我试过直接引用对象(只是类名),但这不起作用。如何引用该对象?我不想把它移到同一个文件中,它会弄得一团糟。

有没有一种非黑客的方式来做到这一点?如果没有,我是否实施了错误的设计?

【问题讨论】:

  • 如果你只谈论“file1”和“file2”,几乎不可能评论你的设计,不要告诉我们对象做了什么等等,如果东西不起作用,你应该添加代码。

标签: python oop


【解决方案1】:

您需要将 File1.py 中某处的类传递给 file.2 中的某个类。

当您调用 file2.py 中需要使用的方法时,您可以简单地传递对类的引用。

或者您可以编写一个“Set....”方法并传递引用并将其存储在 file2.py 中的某个类中。

您也可以将其设为全局静态变量——但如果您这样做,您将被拒绝进入更好的编码俱乐部。

【讨论】:

    【解决方案2】:

    不,这不是一团糟,我只是认为您以错误的方式访问对象

    首先,导入file1.py中的文件

    import file2
    

    然后,在不忘记作用域的情况下调用对象:

    file2.object.method
    

    如果你想直接调用 object.method,你的导入必须改变

    from file2 import object
    

    那你就可以了

    object.method
    

    阅读this link以了解更多关于模块的信息

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 1970-01-01
      • 2011-02-02
      • 1970-01-01
      • 1970-01-01
      • 2016-11-06
      • 2015-03-09
      相关资源
      最近更新 更多