【问题标题】:Editing python script/executable编辑python脚本/可执行文件
【发布时间】:2016-12-11 03:21:46
【问题描述】:

我有一个可用的 python 程序,它使用 pySerial 为不同的设备设置 IP/网关/广播地址。

基本的想法是用户自己输入地址,其余的由程序完成

IP = 'x.x.x.x'
broadcast = 'x.x.x.x'
gateway = 'x.x.x.x'

我最初的想法只是让用户打开python程序并将地址更改为他们想要的任何地址然后运行它,但我遇到了一些问题

  1. 这可能不是让用户这样做的最佳做法
  2. 用户需要安装python
  3. 如果我从当前代码创建可执行文件,用户将无法将地址更改为他们想要的地址

允许用户输入自己的地址的最佳方式是什么?这个脚本的重点是自动化一个过程,所以获取用户输入对我来说真的没有意义

【问题讨论】:

  • 有很多选择。常见的包括读取配置文件或接受命令行参数。对于这两种解决方案,都有很多模块可供您选择,包括标准库中的一些。
  • 例如,您可以使用 raw_input() 函数。 docs.python.org/2/library/functions.html#raw_input

标签: python serial-port executable py2exe pyserial


【解决方案1】:

有几种可能的方法可以做到这一点,尽管用户仍然需要某种形式的 Python 来运行您的应用程序。话虽如此,如果你用py2exe之类的工具打包你的应用程序,它会打包一个最小的Python解释器,这样用户就不必单独安装了。

  1. 使用脚本从中读取地址的配置文件。
  2. 在命令行中将地址作为参数传递。
  3. 向网络服务询问地址。

【讨论】:

  • @MorganThrapp,对于解释器的必要性,我们似乎没有分歧。是的,我知道你可以打包它,但我想我误解了 OP 的问题。
  • 是的,我确实将 OP 的主要关注点读作“我想将此程序提供给没有安装 Python 的人”。他们似乎不太可能反对已经存在 Python 的副本。以为我很容易就错了。
猜你喜欢
  • 2015-05-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-11
  • 1970-01-01
  • 2012-09-02
相关资源
最近更新 更多