【问题标题】:What is the best way to write simple python script that runs on both Unix and Windows编写在 Unix 和 Windows 上运行的简单 python 脚本的最佳方法是什么
【发布时间】:2019-11-15 13:37:32
【问题描述】:

我用 Python (3) 编写了一个基本的互联网速度检查应用程序。最初,我将其编写为通过任务调度程序在我的 Windows 机器上运行。然后我将它复制到我的 Pi(运行 Raspian)并编辑它以通过 Cron 工作。我想增强代码但仍然能够在 Windows 或 Unix 下运行它。我也想开始使用github。因此,最好的方法是维护 2 个单独的应用程序,一个应用程序,但在 github 中分叉或分支 2 个版本,或者对它们进行变体 if os = win then xxxx else if os = unix then... 希望这是有道理的。谢谢。

我目前有 2 个独立的代码库,它们非常相似但有区别(例如对目录/文件的引用等;)

【问题讨论】:

    标签: python windows github


    【解决方案1】:

    当然是同一个项目。将通用代码(并尽最大努力制作尽可能多的代码)提取到基类中,在main 中决定调用哪个平台(import platform; platform.system().lower() 将为您提供简单的“linux”和“ windows" 值),然后从该特定类创建您的实例。类似于以下内容:

    # myapp/base.py
    
    class BaseApp(object):
    
    # myapp/windows/app.py and myapp/linux/app.py
    
    class App(BaseApp):
    

    【讨论】:

    • 太棒了。感谢您的快速回答和代码示例。
    • 抱歉一件事——主要是——如果是 UNIX,我需要在一开始就添加 shebang——但是因为它需要首先添加,所以如果它是 UNIX,我必须先完成它或 Windows。
    • Shebang 不会干扰 Windows 中的执行,如果需要,只需添加即可。
    猜你喜欢
    • 1970-01-01
    • 2017-12-12
    • 2015-01-10
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 2019-09-24
    • 1970-01-01
    相关资源
    最近更新 更多