python udp聊天室_做一个Udp聊天室

做一个Udp聊天室

准备工作

首先下一个网络调试助手,mac的长这个样子:

image

乌班图的长成这个样子:

image

windows的差不了太多,上网搜一下吧。

观察上面你就能看到,都有几个共同点。

image

红色箭头从上往下,依次是:

你要发的目标地址,目标地址的目标端口,你只有在发送的端口,写上8080,这个网络调试助手才能接收到。(端口是分给每个软件的,或者说进程的。)

目标IP其实就是你本机的ip地址,端口号设置为7788,不设置当然也是可以的。那样系统就会分配一个端口给你。

那么问题来了,这么看自己的ip呢,mac就在终端输入ifconfig,linux也是这个命令。windows,cmd之后黑框输入ipconfig就会出来。

image

本地ip一般不需要你设置,端口需要设置。点击开始绑定,就建立连接了。

结果如下:

image

image

代码如下:

import socket

def send_msg(udp_socket):

"""发送消息"""

dest_ip = input("输入ip:")

dest_port = int(input("输入port:"))

send_data = input("输入内容:")

udp_socket.sendto(send_data.encode("utf-8"),(dest_ip,dest_port))

def recv_msg(udp_socket):

"""接受信息"""

recv_data = udp_socket.recvfrom(1024)

print("%s : %s" % (str(recv_data[1]),recv_data[0 ].decode("utf-8")))

def main():

udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

udp_socket.bind(("",7788))

while True:

print("Udp聊天器")

print("1.发送消息")

print("2.接受消息")

print("0.退出功能")

op = input("请输入功能")

if "1" == op:

send_msg(udp_socket)

elif "2" == op:

recv_msg(udp_socket)

elif "0" == op:

break

else:

print("输入有误")

if __name__ == '__main__':

main()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值