当前位置: 代码迷 >> python >> 导入并调用不同命令的列表作为函数
  详细解决方案

导入并调用不同命令的列表作为函数

热度:51   发布时间:2023-06-13 14:25:42.0

目前,我正在尝试了解控制软件如何通过串行端口与调制解调器/ DCE通信。 我为此目的在Python中使用PySerial。 我设法被动地听了两者的通信,并确实有一个字节字符串列表(例如b'\\x1d\\x10\\xff' ),该软件在执行几个单一操作时就发送了。

为了完全理解命令结构和响应,我想使用试错法,并通过发送命令扩展“仅侦听”脚本并随后侦听响应,从而在自己的PC上模仿控制软件。 现在,我将这些命令定义为函数,例如:

def Testcommand1():
    if serial.isOpen() == True:
        serial.write(b'\x1d\x10\xff')
        print('Testcommand1 to do some specific stuff sent, awaiting response.')
    else:
        print('ERROR: Serial port is closed')

最后,我将有20-30个不同的命令。 我计划在另一个文件中定义它们,然后从那里调用它们。 据我了解,为了调用它们,我需要分别导入每个函数,例如

from commandfile import Testcommand1()
from commandfile import Testcommand2()
from commandfile import Testcommand3()
...

这就是我开始怀疑我的方法的地方(因为在开始我的实际“听”程序之前,我将有20-30行):这真的是最好的方法吗? 还是有一些纤细而精巧的def function()来定义我要发送的命令?

from commandfile import Testcommand1()将不起作用。

from commandfile import Testcommand1将。

您也可以将它们全部导入

from commandfile import *
  相关解决方案