【TCP/IP网络编程实验】之【python实现客户端给服务器发送小写字母,服务器返回大写字母(UDP)】
程序员文章站
2024-03-17 18:41:46
...
实验要求
实验代码及结果
S
import socket
# 本机IP和开放端口
host_port = ('127.0.0.1', 8888)
# 最大传输字节
data_size = 1024
# 编解码格式
data_type = 'utf-8'
# 最大连接数
connect_max = 5
def create_server():
try:
# 创建socket对象
server = socket.socket(
socket.AF_INET, socket.SOCK_DGRAM # UDP
)
# 绑定主机IP与端口
server.bind(host_port)
while True:
# data为接收数据,add为发送者地址
receiver_data, add = server.recvfrom(data_size)
receiver_data = receiver_data.decode(data_type)
print('接收到来自{}的内容:{}'.format(add, receiver_data))
# 将字母全部转为大写
send_data = receiver_data.upper()
# 发送给客户端
server.sendto(send_data.encode(data_type), add)
print('已发送给{}内容:{}'.format(add, send_data))
except Exception as e:
print(e)
create_server()
S
import socket
# 服务器IP和开放端口
server_host_port = ('127.0.0.1', 8888)
# 本地IP和开放端口
client_host_port = ('127.0.0.1', 8889)
# 最大传输字节
data_size = 1024
# 编解码格式
data_type = 'utf-8'
def create_client():
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
client.bind(client_host_port)
try:
while True:
send_data = input('请输入要发送的字符:')
# 发送内容
client.sendto(send_data.encode(data_type), server_host_port)
# 接收内容
receive_data, add = client.recvfrom(data_size)
print('接收到来自{}的消息:{}'.format(add, receive_data.decode(data_type)))
except Exception as e:
print(e)
create_client()
实验结果:
C:
S:
上一篇: MySQL5.6优化---索引下推
下一篇: Java编程思想学习笔记十一:持有对象