如何使Python程序从终端连续运行(直到手动停止它)?

时间:2019-07-05 04:42:28

标签: python

我有一个python程序,该程序从用户处获取输入(单个字符“ y”或“ n”),然后根据该输入执行特定任务。我需要允许该程序从终端连续运行,直到我决定停止它为止。当前,我必须继续返回终端并从那里执行程序(并始终键入该单个字符)。

PS: :如果有帮助,该程序会将数据添加到MySQL数据库中,因此我需要这样做才能使整个过程自动化(并且因此更快一点)

EDIT

我的my-program.py如下:

main():
    if input().lower()=='y':
        #does something here
    else:
        #does something else

我的要求是从终端无限运行Python程序。我确实知道如何使用循环以及如何根据用户输入执行任务。我想要的是在出现提示时自动 给'n'作为输入字符输入。

my-program.py在给定字符作为输入时执行某些操作。当我使用如下所示的while循环从另一个Python程序中调用my-program.main()时,我希望在出现提示时({{1的'n'语句时)继续传递相同的输入(例如input()) }}被执行)

my-program.py

2 个答案:

答案 0 :(得分:0)

首先安装键盘软件包:

import keyboard  # using module keyboard
while True:  # making a loop
    try:  # used try so that if user pressed other than the given key error will not be shown
        if keyboard.is_pressed('q'):  # if key 'q' is pressed 
            print('You Pressed A Key!')
            break  # finishing the loop
        else:
            pass
    except:
        break  # if user pressed a key other than the given key the loop will break

然后编写代码:

{{1}}

来源:https://github.com/aadel112/googoose#user-content-options

答案 1 :(得分:0)

一般情况:“是”命令,它将使用“ y”作为默认选项,不会一遍又一遍地询问您。

$ man是

是-重复输出一个字符串,直到被杀死[...]

说明: 重复输出所有指定的STRING或“ y”的行。 它可能等效于--force-yes,因此很危险。如果仍要执行此操作,则通过管道传递yes:

yes | <command>