Python3中的语法错误

Python3中的语法错误,python,python-3.x,syntax,Python,Python 3.x,Syntax,我刚刚开始学习Python,我决定从3.2开始 我正在尝试一些套接字管理代码,但出现语法错误。(线路在2.7中工作正常) 有什么想法吗 def __init__(self, (socket, address)): File "./main.py", line 16 def __init__(self, (socket, address)): ^ SyntaxError: invalid syntax 在Python3中,

我刚刚开始学习Python,我决定从3.2开始

我正在尝试一些套接字管理代码,但出现语法错误。(线路在2.7中工作正常)

有什么想法吗

        def __init__(self, (socket, address)):
  File "./main.py", line 16
    def __init__(self, (socket, address)):
                       ^
SyntaxError: invalid syntax

在Python3中,不能使用元组参数定义方法。这在Python2中是可能的,但已删除。看

这种语法使内省变得困难(甚至对于IronPython来说是不可能的),与其他新的参数语法(注释和只包含关键字的参数)不兼容,产生了无用的错误消息,并且是该语言最不为人所知和使用最少的特性之一

您必须使用以下方法进行解包:

def __init__(self, socket_address):
    socket, address = socket_address

这很有趣-他们为什么这么做?@MattDMo:还有其他新的参数特性(仅限关键字的参数、注释)使得这个案例很难维护,而且很少使用。