python编写简易聊天室实现局域网内聊天功能
作者:WangF0 发布时间:2023-08-30 07:45:52
标签:python,聊天室,聊天
本文实例为大家分享了python实现局域网内聊天功能的具体代码,供大家参考,具体内容如下
功能:
可以向局域网内开启接收信息功能的ip进行发送信息,我们可以写两段端口不同的代码来实现在一台电脑上与自己聊天.
关键点:
要想实现此功能必须将程序的端口固定
from socket import *
def udp_send(udp_socket):
# 发送消息 接收用户输入内容
send_mes = input("请输入发送内容:")
# 接收用户输入ip
ip = input("请输入ip地址:")
# 接收用户输入端口号
port = int(input("请输入端口号"))
# 发送消息 内容进行编码
udp_socket.sendto(send_mes.encode("gbk"), (ip, port))
def udp_recvfrom(udp_socket):
# 接收消息 最多4096个字节
get_mes, get_ip = udp_socket.recvfrom(4096)
print("收到来自%s的消息:%s" % (str(get_ip), get_mes.decode("gbk")))
def main():
# 创建套接字
udp_socket = socket(AF_INET, SOCK_DGRAM)
# 设置固定端口
udp_socket.bind(("", 8889))
while True:
print("*" * 50)
print("----------无敌聊天器----------")
print("1.发送消息")
print("2.接收消息")
print("0.退出系统")
print("*" * 50)
user = input("请输入要执行的操作:")
if user == "1":
udp_send(udp_socket)
elif user == "2":
udp_recvfrom(udp_socket)
elif user == "0":
break
else:
print("输入有误")
# 关闭套接字
udp_socket.close()
if __name__ == "__main__":
main()
来源:https://blog.csdn.net/wf134/article/details/78509362
0
投稿
猜你喜欢
- 1、空(None)表示该值是一个空对象,空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None
- 上文我们总结过了Python多继承的相关知识,没看过的小伙伴们也可以去看看,今天给大家介绍Python类的单继承相关知识。一、类的继承面向对
- 使用Python 2.7 + pywin32 + wxpython开发每隔一段时间检测一下服务是否停止,如果停止尝试启动服务。进行服务停止日
- python烟花代码如下# -*- coding: utf-8 -*-import math, random,timeimport thre
- Tensorflow数据读取有三种方式:Preloaded data: 预加载数据Feeding: Python产生数据,再把数据喂给后端。
- 描述super() 函数用于调用下一个父类(超类)并返回该父类实例的方法。super 是用来解决多重继承问题的,直接用类名调用父类方法在使用
- 有时候使用到获取本机IP,就采用以下方式进行。#!/usr/bin/python import socketimport stru
- Python实现GIF动图的提取及合成在开始之前,先来一个动图开头(预览)图片转GIF动图1、准备工作在开始合并前,先明确要转换哪些图片,以
- 我插入Mysql5的中文一直是乱码。但是直接使用mysqlAdmin,EMS等工具插入DB就不是乱码。而且我还可以使用程序正常地读出来。原因
- 如何在线更改Windows2000管理者密码?changepwd.htm <html><head><title
- 一、前言我们一般在做接口关联时,会通过保存中间变量实现接口关联,在关联时就需要用到变量提取,那今天我们就介绍接口自动化中变量提取的两大神器:
- 本文通过实际业务系统中调整的一个案例,试图给出一个常见CPU消耗问题的一个诊断方法.大多数情况下,系统的性能问题都是由不良SQL代码引起的,
- 理解切片基本用法:首先需要明白,可迭代对象,按照正数索引(正序)是从0开始的,按照负数索引(逆序)是从-1开始的。>>>
- 0.引言利用python开发,借助Dlib库进行人脸识别,然后将检测到的人脸剪切下来,依次排序显示在新的图像上;实现的效果如下图所示,将图1
- 最近一直在用TF做CNN的图像分类,当softmax层得到预测结果后,我希望能够看到预测结果,以便和标签之间进行比较。特此补上,以便自己记忆
- 一、求算术平方根a=x=int(raw_input('Enter a number:'))if x >= :while
- 一、背景:近期在利用 pycharm 安装第三方库时会提示 pip 不是最新版本, 因此对 pip 进行更新,但是生成最新版本之后, pi
- smtp指令书接上文邮件实现详解,这里我们及我们简单复习一下smtp的指令如下:telnet smtp.163.com 25[outpout
- 想做个和IBM公司一样的网站LOGO,试了半天也没有做出来,郁闷之下,只好求高手帮助!先在这里谢谢了!方法一1、写上IBM,调节字号颜色2、
- 最近决定把MT的后台数据从Berkeley的文件DB转到MySQL。原因之一是使用关系数据库可以获得更多的灵活性,比如运行一条sql来变更