为了账号安全,请及时绑定邮箱和手机立即绑定

在控制台的两个输入之间运行一个函数

在控制台的两个输入之间运行一个函数

莫回无 2022-07-26 21:02:28
我有一个运行良好的脚本,但我想为其添加一个实现。首先,我使用脚本通过 PyVISA 与几个设备(频率发生器和示波器)进行通信并进行一些测量。在此过程中的某个步骤,我必须手动调整一个带有旋钮的光电探测器(不能与 PyVISA 一起使用,但连接到示波器的物理设备),该旋钮非常敏感并且可能会损坏。我正在使用我自己的功能来控制通过示波器测量电压的损坏,名为 PreventAPD。该功能主要读取示波器的电压,如果大于某个电平,则停止系统。运行脚本时,控制台中会显示一条消息以进行调整,此时我想开始运行 PreventAPD 功能,并且在调整完成后停止运行,我在再次控制台。调整时间可能需要不确定的时间,有时是 1 分钟或 3 分钟。下面的代码显示了我的问题的一个示例。print('Adjust manually the Gain from the APD')input('Press Enter to continue')               <---- From herePreventAPD()                                   <---- Function to runPreventLD()                                    <---- Function to runM = int(input("Insert the value of M: "))print(f"The value of M is {M}")input('Press Enter to continue')               <---- Until here有人有什么主意吗?
查看完整描述

1 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

...脚本在控制台中的两个输入之间运行函数,但只运行一次。…我希望它在一个循环中运行,该循环从一个输入控制台开始,到另一个输入控制台停止。


您可以使用KeyboardInterrupt异常来中断循环:


print('Adjust manually the Gain from the APD')

input('Press Enter to continue')

print('Press Interrupt (Ctrl-C) to enter M')

try:

    while True:

        PreventAPD()

        PreventLD()

except KeyboardInterrupt:

    pass

M = int(input("Insert the value of M: "))


查看完整回答
反对 回复 2022-07-26
  • 1 回答
  • 0 关注
  • 70 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信