我試圖運行一個簡單的RPC服務器與執行一些基本操作的客戶端。一切似乎都正確無誤,但嘗試運行的客戶端產生一個看起來像一個無效的語法錯誤:Python - 奇怪的無效語法錯誤
$ python rpcClient.py
File "rpcClient.py", line 9
^
SyntaxError: invalid syntax
這是rpcClient.py文件:
import xmlrpclib
proxy = xmlrpclib.ServerProxy("http://localhost:7999/")
print "3 is even: %s" % str(proxy.is_even(3))
print "100 is even: %s" % str(proxy.is_even(100))
proxy.printString("Testing")
proxy.doubleList([1, 2, 4, 8])
print "Sum of all numbers from 1 to 5: %s" % str(proxy.sumList([1, 2, 3, 4])
我敢肯定服務器文件不是問題,但爲了以防萬一它是,這是rpcServer.py:
import xmlrpclib
from SimpleXMLRPCServer import SimpleXMLRPCServer
def is_even(n):
return n%2 == 0
def printString(s):
print s
return
def doubleList(l):
for i in range(l):
l[i] = l[i]*2
print l[i]
return
def sumList(l):
s = sum(l)
return s
server = SimpleXMLRPCServer(("localhost", 7999))
print "Listening on port 7999..."
server.register_function(is_even, "is_even")
server.register_function(printString, "printString")
server.register_function(doubleList, "doubleList")
server.register_function(sumList, "sumList")
server.serve_forever()
的問題是什麼你知道嗎?我嘗試過反覆運行客戶端,並且每次都收到上面提到的同樣的錯誤。
+1提到「格式」更好。那裏有太多的老教程。 – SethMMorton