python编写一个服务器程序,接收客户端的连接,并显示从客户端发送来的数据。 编写一个客户端程序,连接到服务器,并向服务器发送数据。学习《Python的socket实现服务器和客户端进程通信》的代码,并实现客户端和服务器通信的功能
时间: 2024-05-01 22:23:33 浏览: 13
服务器端代码:
```python
import socket
HOST = '127.0.0.1' # 服务器ip地址
PORT = 8888 # 监听的端口号,可以自定义
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 创建socket对象
server_socket.bind((HOST, PORT)) # 绑定ip地址和端口号
server_socket.listen(1) # 监听客户端连接请求
print('服务器已启动,等待客户端连接...')
while True:
client_socket, client_address = server_socket.accept() # 接收客户端连接
print('客户端已连接:', client_address)
while True:
data = client_socket.recv(1024) # 接收客户端发送的数据
if not data: # 如果没有数据,则跳出循环
break
print('收到来自客户端的数据:', data.decode())
client_socket.close() # 关闭客户端连接
```
客户端代码:
```python
import socket
HOST = '127.0.0.1' # 服务器ip地址
PORT = 8888 # 监听的端口号,可以自定义
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 创建socket对象
client_socket.connect((HOST, PORT)) # 连接服务器
while True:
data = input('请输入要发送的数据:')
if not data: # 如果没有数据,则跳出循环
break
client_socket.sendall(data.encode()) # 发送数据到服务器
client_socket.close() # 关闭客户端连接
```
运行服务器端程序后,再运行客户端程序,就可以在服务器端看到客户端发送的数据了。