如何让我的Python代码更高效,更动态?

时间:2014-04-29 10:51:46

标签: python class sharing

我是一名实习新手程序员。

我/我正在创建简单的程序,通常围绕屏幕抓取,数据标题(postrgres),各种处理方法,现在通过wxpython

进行GUI

我发现很多这些程序重叠 - 即使用相同的技术,并获得一些很长的复制和粘贴程序!

加班我改进了这些技术,发现自己不得不回溯多个程序来更新这些技术。

  

如何?我可以吗?创建一个更加动态,系统化的流程。

     

所有程序/程序/类共享的地方?

     

它有名字吗?

我的逻辑思维是,像'程序'和'类'我会有较小的低级程序和中级程序,它们需要这些 - GUI是最顶级的程序!但这意味着要传递数据!类和程序可以是单独的程序吗?

非常感谢 卡梅伦

2 个答案:

答案 0 :(得分:1)

您可以使用一系列技术:

     
  1. 共享模块 - 一组具有良好定义的接口的模块 - 函数,类等。这些模块位于您使用的每个应用程序都可以访问的文件夹中 - 即文件夹的路径被添加到PYTHON_PATH环境变量中。应该设计这些接口,以便在向它们添加功能时,它们不会破坏旧的应用程序。  
  2. 设计模式 - 使用良好的设计模式设计应用程序 - MVC(主视图控制器)对于GUI程序非常有用。 V是您的GUI - 并且只公开一些方法,这些方法实际上并不依赖于GUI本身(例如display_foo等实例)。 Master是您的数据访问功能 - 再次使用定义良好的接口。 View和Master之间的控制器接口。可能还有其他模式适用于您的应用程序。

答案 1 :(得分:1)

对于小规模项目,您可以创建如下的工作区目录:

-MyWorkspace
    -Program1.py
    -Program2.py
    -SharedModules
        -Classes.py
        -Functions.py
        -Decorators.py

然后在你的python程序中你可以做,例如:

from SharedModules.Functions import foo, bar
from SharedModules.Classes import Spam

同样,这适用于小规模的工作空间。如果你发现自己正在做一些更复杂和更大的事情,它可能会变得太乱。