-1
def create_msg(content: bytes) -> bytes:
size = len(content)
return encode_msg_size(size) + content


def encode_msg_size(size: int) -> bytes:
return struct.pack("<I", size)

我想将这两个函数从 python3 迁移到 python2.7,但每次都会出现语法错误。有人有什么想法吗?

错误: File "__init__.py", line 4 def create_msg(content: bytes) -> bytes: SyntaxError: invalid syntax

4

2 回答 2

1

函数注释是在 python 3链接中引入的。从代码中删除注释:

def create_msg(content):
    size = len(content)
    return encode_msg_size(size) + content

def encode_msg_size(size):
    return struct.pack("<I", size)
于 2021-01-10T14:07:38.987 回答
0

你应该提供你的错误

顺便说一句,您的缩进是错误的

更正了缩进和代码:-。(未测试)

def create_msg(content):
    size = len(content)
    return bytes(encode_msg_size(size) + content)


def encode_msg_size(size):
    return bytes(struct.pack("<I", size))

content : bytes格式在 python 2 中不可用

于 2021-01-10T14:09:04.240 回答