Python 从一个;lambda“;功能
在Python中,我使用库外的类。如果设置了某个参数,我只想调用某些函数 例如:Python 从一个;lambda“;功能,python,Python,在Python中,我使用库外的类。如果设置了某个参数,我只想调用某些函数 例如: import pyserial serialobj=serial.Serial() parameter=0 #The part idk about def serialobjpass() if parameter=1: pass Argument to serialobj. serialobj可能是serialobj.write()或serialobj.recieve() 我会像一
import pyserial
serialobj=serial.Serial()
parameter=0
#The part idk about
def serialobjpass()
if parameter=1:
pass Argument to serialobj.
serialobj
可能是serialobj.write()
或serialobj.recieve()
我会像一个男人在中间打电话的时候,我不希望他们 < P>这样的事情可能会起作用:
类转发器(对象):
定义初始(自我,目标):
self.target=目标
self.parameter=1
def读取(自身,n):
打印(('READ',n))
如果为self.parameter:
返回self.target.read(n)
其他:
返回0
def写入(自身、数据):
打印((‘写’,数据))
如果为self.parameter:
返回self.target.write(数据)
其他:
返回长度(数据)
导入pyserial
serialobj=转发器(serial.serial())
...
serialobj.write('HELLO\r\n')
打印([serialobj.read(1)])
self.parameter=0#防止后续读取或写入。
serialobj.write('World\r\n')#不会写入串行端口。
在此设置中,
转发器
对象拦截对.read
和.write
方法的所有调用,并根据参数的设置调用原始的.read
和.write
方法。请添加一些示例代码,说明如何使用(调用)<代码> SerialObjuts。就像我将使用SerialObjo一样,中间的一个男人在我不需要的时候调用SpHOON,这和LAMBDAS有什么关系?谢谢你澄清你的用例。为了让其他人更容易理解您的需求,正如我最初所问的,请添加一些示例代码,说明您计划如何使用(call)serialobjpass
。确保类似的方法可以工作。但我想到了一个更有活力的方法solution@Usus当前位置您希望得到什么样的解决方案?read
和write
的主体包含自定义逻辑,不能自动生成。