在同一台主机里用Python编程完成从客户端输入一行字符,发送到服务器后,由服务器转化成大写字母,回送到客户端并显示
时间: 2023-05-29 13:05:07 浏览: 74
在主函数中输入一含有大写字母的字符串,调用该函数并输出改变后的字符串。
以下是Python代码实现:
# 服务器端代码
import socket
HOST = '127.0.0.1' # 服务器IP地址
PORT = 8888 # 服务器端口号
# 创建一个socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定IP地址和端口号
server_socket.bind((HOST, PORT))
# 监听连接请求
server_socket.listen(1)
print('等待客户端连接...')
# 接受客户端连接
client_socket, client_address = server_socket.accept()
print('客户端已连接:', client_address)
# 接受客户端发送的数据并处理
while True:
data = client_socket.recv(1024).decode() # 接受数据
if not data: # 接收数据为空则退出循环
break
print('接收到数据:', data)
data_upper = data.upper() # 转换成大写字母
client_socket.sendall(data_upper.encode()) # 发送数据
# 关闭socket连接
client_socket.close()
server_socket.close()
# 客户端代码
import socket
HOST = '127.0.0.1' # 服务器IP地址
PORT = 8888 # 服务器端口号
# 创建一个socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
client_socket.connect((HOST, PORT))
print('已连接到服务器:', (HOST, PORT))
# 发送数据并接受响应
while True:
data = input('请输入一行字符:')
client_socket.sendall(data.encode()) # 发送数据
data_recv = client_socket.recv(1024).decode() # 接收响应数据
print('接收到响应数据:', data_recv)
# 关闭socket连接
client_socket.close()
阅读全文