帮我用Python写一段Python作为服务端,网络调试助手作为客户端,两者通过TCP通讯链接,当网络调试助手输出ok时Python输出ok收到
时间: 2024-09-20 13:02:35 浏览: 30
Python 网络编程之TCP客户端/服务端功能示例【基于socket套接字】
好的,为了创建一个简单的Python服务器和客户端,我们可以使用`socket`模块来建立TCP连接。以下是两部分的代码:
**服务器端 (server.py)**:
```python
import socket
def server():
# 创建一个TCP套接字
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定地址和端口
host = 'localhost' # 或者服务器的实际IP
port = 12345 # 静态的端口号
s.bind((host, port))
# 设置最大连接数
s.listen(1) # 监听连接请求
print("Server is listening...")
while True:
# 接受连接
client_socket, addr = s.accept()
data = client_socket.recv(1024).decode() # 接收客户端的数据
if data == "ok":
print("Received 'ok' from client.")
client_socket.sendall("ok received".encode()) # 回应给客户端
else:
print(f"Unexpected data: {data}")
client_socket.close()
if __name__ == "__main__":
server()
```
**客户端 (client.py)**:
```python
import socket
def client():
# 创建一个TCP套接字
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接到服务器
host = 'localhost' # 如果是本地测试,保持不变
port = 12345
s.connect((host, port))
# 发送数据到服务器
s.sendall("ok".encode())
response = s.recv(1024).decode() # 等待服务器回应
print(response)
s.close()
if __name__ == "__main__":
client()
```
要在客户端运行`client.py`并在服务器运行`server.py`。当客户端发送 "ok" 时,服务器会响应 "ok received"。
阅读全文