How to input arguments after compiling python program with PyInstaller(如何使用PyInstaller编译Python程序后输入参数)
本文介绍了如何使用PyInstaller编译Python程序后输入参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在import sys之后,我使用sys.argv获取输入参数。
但是,在我使用PyInstaller编译我的程序之后,exe程序将不接受我的输入。相反,它使用我为程序设置的默认值。
如果我用python this_script.py运行它,它会等待我的输入指定wait_time。但是,在我用PyInstaller编译之后,如果我双击exe文件,就没有地方让我输入wait_time。
如何编译它并让exe文件接受我的输入?
import sched, time
import sys
s = sched.scheduler(time.time, time.sleep)
# wait_time is an integer representing how many seconds to wait.
def do_something(sc, wait_time):
# Here will be the code for doing something every after "wait_time " seconds
sc.enter(wait_time, 1, do_something, (sc, wait_time))
try:
wait_time = int(sys.argv[1])
except IndexError:
wait_time = 5
# s.enter(wait_time, 1, do_something, (s,))
s.enter(wait_time, 5, do_something, (s, wait_time))
s.run()
推荐答案
如果单击可执行文件将其打开:
通常,当您双击exe时,只有一个参数是<EXEfilename>。为该EXE创建快捷方式。在该快捷方式的属性中,您将看到一个名为Target的属性,该属性将包含<EXEfilename>,将其更改为<EXEfilename> <arg1> <arg2>。当您使用此快捷方式打开exe时,它会调用目标,即this call<EXEfilename> <arg1> <arg2>。然后,您可以使用sys.argv访问arg1和arg2
如果使用命令行:
就称它为C:> <EXEfilename> <arg1> <arg2>
这篇关于如何使用PyInstaller编译Python程序后输入参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:如何使用PyInstaller编译Python程序后输入参数
基础教程推荐
猜你喜欢
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
