使用udp协议

服务端:

#!/usr/bin/python3
# coding:utf-8
# Auther:AlphaPanda
# Description:UDP服务端
# Version:1
# Date:Mon Dec 2 03:24:46 EST 2019
### 服务端
import socket
# 1 创建udp对象 tpye = SOCK_DGRAM 代表udp协议
sk = socket.socket( type = socket.SOCK_DGRAM ) # 2 绑定Ip和端口(在网络中注册主机,让其他的服务器可以找到该主机)
sk.bind(("127.0.0.1",9000)) # 3 收发数据的逻辑
"""udp的服务端,第一次只能接收数据"""
while True:
msg,cli_addr = sk.recvfrom(1024)
print(msg.decode("utf-8"))
message = input("server:>>>")
if message == "q":
break
else:
sk.sendto(message.encode("utf-8"),cli_addr)
# 4 关闭udp连接
sk.close()

客户端:

#!/usr/bin/python3
# coding:utf-8
# Auther:AlphaPanda
# Description:udp客户端
# Version::1
# Date:Mon Dec 2 03:28:23 EST 2019
"""
import socket
sk = socket.socket( type = socket.SOCK_DGRAM)
sk.sendto("hello".encode("utf-8"),("127.0.0.1",9000))
msg,dest_addr = sk.recvfrom(1024)
print(msg.decode("utf-8"))
sk.close()
"""
# 导入模块
import socket
# 生成UDP类型的套接字对象
sk = socket.socket( type = socket.SOCK_DGRAM )
# 逻辑判断,收发数据的代码
while True:
message = input("client:>>>")
if message == "q":
break
else:
sk.sendto(message.encode("utf-8"),("127.0.0.1",9000))
msg,ser_addr = sk.recvfrom(1024)
print(msg.decode("utf-8")) # 关闭UDP连接
sk.close()

python-套接字编程之udp的更多相关文章

  1. day29 python 套接字socket TCP udp 形式发送信息的区别

    我们经常把socket翻译为套接字,socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信. socket起源于UNIX,在 ...

  2. 异步套接字编程之select模型

      █ 选择(select)模型是Winsock中最常见的 I/O模型.核心便是利用 select 函数,实现对 I/O的管理!利用 select 函数来判断某Socket上是否有数据可读,或者能否向 ...

  3. Java网络编程之UDP

    Java网络编程之UDP 一.C/S架构中UDP网络通信流程 ①创建DatagramSocket与DatagramPacket对象 ②建立发送端,接收端 ③建立数据包 ④调用Socket的发送.接收方 ...

  4. python套接字解决tcp粘包问题

    python套接字解决tcp粘包问题 目录 什么是粘包 演示粘包现象 解决粘包 实际应用 什么是粘包 首先只有tcp有粘包现象,udp没有粘包 socket收发消息的原理 发送端可以是一K一K地发送数 ...

  5. python套接字编程实现ntp服务和远程命令执行

    python套接字编程实现ntp服务和远程命令执行 目录 基于udp实现ntp服务 基于tcp实现远程命令执行 基于udp实现远程命令执行 tcp与udp的比较 前面关于套接字基础请查阅 https: ...

  6. python套接字编程基础

    python套接字编程 目录 socket是什么 套接字的工作流程 基于tcp的套接字 基于udp的套接字 socket是什么 客户端/服务器架构(C/S架构) 服务端:提供服务的一端 客户端:请求服 ...

  7. Python套接字编程(1)——socket模块与套接字编程

    在Python网络编程系列,我们主要学习以下内容: 1. socket模块与基本套接字编程 2. socket模块的其他网络编程功能 3. SocketServer模块与简单并发服务器 4. 异步编程 ...

  8. python(十三):网络编程之socket与socketserver

    socket是操作系统中I/O系统延伸部分,支持TCP和UDP等网络通信协议,它使计算机之间(或其本身)的进程通信称为可能.socket中的socket()函数.recv()函数和send()函数,相 ...

  9. Socker编程之UDP

    一:socket简介 1. 不同电脑上的进程之间如何通信 首要解决的问题是如何唯一标识一个进程,否则通信无从谈起! 在1台电脑上可以通过进程号(PID)来唯一标识一个进程,但是在网络中这是行不通的. ...

随机推荐

  1. python学习之面向对象(四)

    6.9 反射 反射是非常重要的内置函数之一. 反射是通过字符串去操作对象相关的属性,这里的对象包括:实列,类,当前模块,其他模块. 主要的四个函数: 查看: hasattr(对象,待查内容的字符串形式 ...

  2. 安装 docker-registry-frontend

    拉取镜像  最新的V2 docker pull konradkleine/docker-registry-frontend:v2 创建 docker-compose.yml version: ' se ...

  3. HDU 1114 Piggy-Bank(动态规划、完全背包)

    Piggy-Bank Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  4. 小记---------FLUM负载均衡配置

    sink group允许组织多个sink到一个实体上,sink processors能够提供在组内所有sink之间实现负载均衡的能力,而且在失败的情况下能够进行故障转移从一个sink到另一个sink, ...

  5. Office批量授权(VL)版本和激活方法

    Office 2010 Office 2010中文专业增强版 32位 文件名: SW_DVD5_Office_Professional_Plus_2010w_SP1_W32_ChnSimp_CORE_ ...

  6. Python笔记(二)

    python笔记 函数式编程 函数 函数是Python内建支持一种封装(将大段代码拆成函数) 通过函数的调用,可以将复制的任务分解. 函数式编程(Functional Programming) 计算机 ...

  7. Maven出错的问题处理

    1:使用Maven部署dubbox.jar包到maven本地仓库 由于Dubbox的jar包并没有部署到Maven的中央仓库中,大家在Maven的中央仓库中可以查找到Dubbo的最终版本是2.5.3 ...

  8. 手把手教你vue配置请求本地json数据

    本篇文章主要介绍了vue配置请求本地json数据的方法,分享给大家,具体如下:在build文件夹下找到webpack.dev.conf.js文件,在const portfinder = require ...

  9. 洛谷 - P3469 - BLO-Blockade - 割点

    https://www.luogu.org/problem/P3469 翻译:一个原本连通的无向图,可以删除图中的一个点,求因为删除这个点所导致的不连通的有序点对的数量.或者说,删去这个点之后,各个连 ...

  10. [.net core]9.中间件的具体实现

    查看Startup.cs的configure方法 public void Configure(IApplicationBuilder app, IHostingEnvironment env) { i ...