网站如何做担保交易平台,哪里有做网站服务,3d建模工资一般多少,最便宜网站空间ChatGPT编程实现简易聊天工具
今天借助[[小蜜蜂]][https://zglg.work]网站的ChatGPT练习socket编程#xff0c;实现一个简易聊天工具软件。
环境#xff1a;Pycharm 2021
系统#xff1a;Mac OS
向ChatGPT输入如下内容#xff1a; ChatGPT收到后#xff0c;根据返回结…ChatGPT编程实现简易聊天工具
今天借助[[小蜜蜂]][https://zglg.work]网站的ChatGPT练习socket编程实现一个简易聊天工具软件。
环境Pycharm 2021
系统Mac OS
向ChatGPT输入如下内容 ChatGPT收到后根据返回结果并进行部分修改如下所示
下面是一个简易的客户端-服务器聊天程序的示例代码使用 Python 的 socket 模块实现
服务器端代码
import socket
import threading# 服务器端函数
def handle_client(client_socket, address):print(f连接来自 {address})while True:data client_socket.recv(1024).decode(utf-8)if not data:breakprint(f收到消息: {data})response input(回复消息: )client_socket.send(response.encode(utf-8))client_socket.close()# 创建 socket 对象
server_socket socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 设置服务器端IP地址和端口
host 192.168.1.21
port 12345# 绑定端口
server_socket.bind((host, port))# 设置最大连接数
server_socket.listen(5)print(f服务器正在运行监听地址为 {host}:{port})while True:client_socket, address server_socket.accept()client_handler threading.Thread(targethandle_client, args(client_socket, address))client_handler.start()客户端代码
为了实现服务器断开后客户端自动断开连接在客户端代码中添加一些逻辑来检测服务器是否已经关闭。一种常用的方法是通过捕获异常来处理连接错误。下面是一个更新过的客户端代码示例其中包含了对服务器断开情况的检测和处理
import socket# 创建socket对象
client_socket socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 服务器的IP地址和端口号
server_ip 192.168.1.21
server_port 12345try:# 连接服务指定服务器的IP地址和端口号client_socket.connect((server_ip, server_port))while True:message input(发送消息: )client_socket.send(message.encode(utf-8))response client_socket.recv(1024).decode(utf-8)print(f收到回复: {response})except ConnectionRefusedError:print(连接被拒绝服务器已关闭)
except ConnectionResetError:print(连接重置服务器断开)
finally:client_socket.close()
在这个示例中服务器会启动并监听来自客户端的连接。每当有新的客户端连接时服务器会创建一个新线程来处理与该客户端的通信。客户端会连接到服务器并可以通过输入消息进行简单的聊天。
请替换服务器代码中 服务器的IP地址 部分为实际的服务器 IP 地址在客户端代码中也可以相应地修改。这样就可以在两个终端上运行服务器和客户端以开始简单的C-S聊天。
分别在服务器端服务器端代码和客户端客户端代码运行聊天程序。运行结果截图如下 以上示例在[小蜜蜂AI网站][https://zglg.work]完成欢迎注册体验。
无所不能的AI时代必将成为广大程序员的最有力的助手快快去体验吧。