用python实现局域网内对话(python实例二十四)
创始人
2025-01-15 14:02:53
0

目录

1.认识Python

2.环境与工具

2.1 python环境

 2.2 Visual Studio Code编译

 3.对话系统

3.1 代码构思

3.2服务端

3.3客户端

3.4运行结果

4.总结


1.认识Python

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字或标点符号,它具有比其他语言更有特色的语法结构。

2.环境与工具

2.1 python环境

在Windows上使用命令行窗口查看所安装的python版本

python --version

 2.2 Visual Studio Code编译

Visual Studio Code是一款由微软开发且跨平台的免费源代码编辑器。该软件以扩展的方式支持语法高亮、代码自动补全、代码重构功能,并且内置了命令行工具和Git 版本控制系统。

 

 3.对话系统

3.1 代码构思

代码分为两块,一块是服务端,一块是客户端,使用socket模块实现。

3.2服务端

服务端:创建套接字对象——将套接字对象与服务器的IP和端口绑定——-启动监听——接收信息——循环——传输完成,关闭套接字

import socket #建立socket套接字对象 sk=socket.socket() #绑定IP地址和端口号 sk.bind(('127.0.0.1',8888)) sk.listen() flag=0 while True:     print('接收准备')     conn,addr=sk.accept()     while True:         rec_msg=conn.recv(1024).decode('utf-8')         if rec_msg=='q':             print('对方连接断开。')             flag=1             break         if rec_msg:             print('对方说:',rec_msg)         sed_msg=input('请输入回复:')         conn.send(sed_msg.encode('utf-8'))         if sed_msg=='q':             flag=2             break     #退出循环,关闭连接     conn.close()     if flag==1:         continue     elif flag==2:         break sk.close() 

3.3客户端

客户端:创建套接字对象——向服务器地址和端口发送请求——寄哪里循环——传输完成,关闭套接字

import socket sk=socket.socket() #连接服务端 sk.connect(('127.0.0.1',8888)) while True:     #发送消息     send_msg=input('请输入消息:')     sk.send(send_msg.encode('utf-8'))     if send_msg=='q':         break     rec_msg=sk.recv(1024).decode('utf-8')     if rec_msg=='q':         print('服务器关闭')         break     if rec_msg:         print('对方消息:',rec_msg) sk.close()

3.4运行结果

4.总结

可以在单台设备上打开两个窗口分别运行客户端和服务端,也可以在一台设备上打开服务端后,在另一台设备上运行客户端程序,进而实现一个局域网内的聊天程序。

注意ip地址和端口号要设置好。

你也运行试试吧!

相关内容

热门资讯

绝活儿辅助!广西老友玩老是输怎... 绝活儿辅助!广西老友玩老是输怎么办(辅助挂)都是真的有辅助app(讲解有挂)在进入广西老友玩老是输怎...
法门辅助!福建13水插件(辅助... 法门辅助!福建13水插件(辅助挂)一贯是有辅助技巧(有挂技术)1、许多玩家不知道福建13水插件辅助怎...
办法辅助!潮友会app下载官方... 办法辅助!潮友会app下载官方辅助器(辅助挂)真是真的是有辅助app(有挂教程)该软件可以轻松地帮助...
妙招辅助!邯郸胡乐挂辅助(辅助... 妙招辅助!邯郸胡乐挂辅助(辅助挂)好像存在有辅助插件(有挂方略)1、上手简单,内置详细流程视频教学,...
教程书辅助!乐酷辅助(辅助挂)... 教程书辅助!乐酷辅助(辅助挂)其实存在有辅助脚本(有挂细节)乐酷辅助能透视中分为三种模型:乐酷辅助模...
学习辅助!决战卡五星辅助(辅助... 学习辅助!决战卡五星辅助(辅助挂)本来真的是有辅助软件(有人有挂)学习辅助!决战卡五星辅助(辅助挂)...
绝活辅助!边锋嘉兴麻将辅助器(... 绝活辅助!边锋嘉兴麻将辅助器(辅助挂)真是真的有辅助神器(新版有挂)1、边锋嘉兴麻将辅助器公共底牌简...
举措辅助!枫叶辅助器(辅助挂)... 举措辅助!枫叶辅助器(辅助挂)本来存在有辅助技巧(竟然有挂)1、下载好枫叶辅助器正确养号方法之后点击...
讲义辅助!点我达辅助(辅助挂)... 讲义辅助!点我达辅助(辅助挂)一直存在有辅助技巧(有人有挂)1、点我达辅助辅助器安装包、点我达辅助辅...
模块辅助!威信茶馆有挂的吗(辅... 模块辅助!威信茶馆有挂的吗(辅助挂)一直真的是有辅助脚本(揭秘有挂)1、玩家可以在威信茶馆有挂的吗线...