我正在尝试用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的Raspberry Pi上做这个。
答案 0 :(得分:8)
你之前忘记了一个右括号。
但是,一旦解析阶段存活,您还会遇到其他错误。例如,您引用了未定义的名称(这将为您提供NameError
):self.host
或self.conn
。
答案 1 :(得分:0)
self.socket.bind((self.host, self.port)