Python客户端和服务器聊天
我正在尝试用Python实现一个非常基本的客户机和服务器聊天,虽然遇到了一些问题,但得到的回答是,我只能同时运行客户机或服务器,而不能同时运行两者,因此我无法聊天 客户端代码:Python客户端和服务器聊天,python,client-server,Python,Client Server,我正在尝试用Python实现一个非常基本的客户机和服务器聊天,虽然遇到了一些问题,但得到的回答是,我只能同时运行客户机或服务器,而不能同时运行两者,因此我无法聊天 客户端代码: #client import socket import time HOST = "localhost" PORT = 5454 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.bind((HOST,PORT)) while True: dat
#client
import socket
import time
HOST = "localhost"
PORT = 5454
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind((HOST,PORT))
while True:
data = raw_input("Enter..... ")
s.sendto(data,(Host,PORT))
print "Server says: " + s.recv(1024)
if data=="bye" or s.recv(1024)=="bye":
print "Exiting..........."
time.sleep(1)
break
服务器代码:
#server
import socket
import time
HOST = "localhost"
PORT = 5454
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind((HOST,PORT))
while True:
print "Client says: " + s.recv(1024)
data = raw_input("Enter..... ")
s.sendto(data,(HOST, PORT))
if data=="bye" or s.recv(1024)=="bye":
print "Exiting.................."
time.sleep(1)
break
程序关闭后,端口是否会自动关闭,或者我是否需要手动关闭端口。第页有套接字的示例代码,您可以很容易地适应您的程序
在您的脚本中,第一个问题是:
s.bind((HOST,PORT))#for client
因为,服务器绑定到ip,而不是客户端,客户端将使用以下功能连接到服务器:
s.connect((HOST,PORT))
另一个问题是,您没有监听新连接并接受它们:
s.listen(1) #number defines amount of queued connection to server
conn, addr = s.accept()
最后一个错误是,如果客户机连接到服务器,甚至不确定是否将数据发送到客户机
希望我能帮你解决这个问题。
KubaBest在客户端,您不想绑定,但需要连接。但这并不是这里唯一的错误,看看socket文档中的。