python3.7 加了一个关键字叫async.
刚好,项目中有个一段代码,用了async做了变量。 这个问题就引起了代码的异常,报错
def execute(self, async=Flase)# other code...print(async)# other code...
当时想了一下, 如果直接改了async这个名字, 那么别人无法兼容之前python3.6的代码。 不改这个名字又会报错不兼容。
最后同事加了几行代码,这个问题就解决了,兼容了python3.6和python3.7
def execute(self, **kwargs)for kw in ['async', 'async_']if kw in kwarsg:async_ = kwargs[kw]breakelse:async_ = False# other code...print(async)# other code...