Python中的函数声明语法错误
我正在尝试用Python写一个简单的网络服务器,但不幸的是,我在让一个函数正常工作这件事上遇到了麻烦!
import os, socket
class serv:
def __init__(self):
self.host
self.port = 'localhost', 58008
self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.socket.bind((self.host, self.port)
def send(self, msg):
self.conn.send(msg + end)
def run(self):
self.socket.listen(1)
self.conn
self.addr = self.socket.accept()
send(self, msg="Hello, world")
S = serv()
S.run()
这个代码在调用send这个函数时出现了以下错误:
File "server.py", line 10
def send(self, msg):
^
SyntaxError: invalid syntax
如果这有帮助(我肯定没有),我是在使用Adafruit WebIDE的树莓派上进行这个操作。
2 个回答
0
这段内容主要讲的是关于闭合括号的问题。光在下一行写一个闭合括号是不够的:
self.socket.bind((self.host, self.port)
11
你在前面的那行代码里忘记加一个右括号了。
不过,除了这个错误,等你过了代码解析这关后,还会遇到其他错误。例如,你在使用一些没有定义的名字(这会导致出现NameError
错误):比如self.host
或者self.conn
。