我正在尝试escape
通过将它们与另一个项目列表进行检查来检查列表中的项目。我可以过滤列表:
@staticmethod
def escapeFrameData(frameData):
toEscape = [0x7e, 0x7d, 0x11, 0x13]
genExpr = (x for x in frameData if x in toEscape)
for x in genExpr:
print x
现在我想将转义字符放在找到的每个项目的前面。像这样的东西:
genExpr = (x for i, x in frameData if x in enumerate(toEscape))
for x in genExpr:
frameData.insert(i-1, 0x7d)
return frameData
需要的行为:
frameData = [0x02, 0x7e, 0x04]
escaped = class.escapeFrameData(frameData)
escaped is now: [0x02, 0x7d, 0x7e, 0x04]
必须如何编写生成器表达式才能完成此操作?有没有更好的方法来获得预期的结果?