python怎么实现UDP协议下的文件传输

  介绍

这篇文章将为大家详细讲解有关python怎么实现UDP协议下的文件传输,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<强> UDP协议下文件传输:

<强>服务端

import 插座      count =0   时间=s  socket.socket (socket.AF_INET, socket.SOCK_DGRAM)   server_addr =, (& # 39; 127.0.0.1 # 39;, 9999)   s.bind (server_addr)      打印(& # 39;Bind  UDP 提醒9999…& # 39;)   while 真正的:   ,if  count ==, 0:   数据,才能client_addr =, s.recvfrom (1024)   打印才能(& # 39;connected 得到% s: % & # 39; % client_addr)   f =,开放才能(数据,& # 39;wb # 39;)   数据的不同之处是,client_addr =, s.recvfrom (1024)   str(数据),if  !=,“b # 39;结束# 39;“:   f.write才能(数据)   打印才能(& # 39;recieved  & # 39; + str(数)+ & # 39;,字节# 39;)   ,其他的:   ,打破   ,s.sendto(& # 39;好# 39;.encode (& # 39; utf - 8 # 39;), client_addr)   计数+=1   打印(& # 39;recercled& # 39; + str(计数)   f.close ()   s.close ()      ,#数据,addr =, s.recvfrom (1024)   ,#打印(& # 39;Received 得到% s: % & # 39;, % addr)   ,# s.sendto (b # 39;你好,,% s ! & # 39;, %数据,addr)

<强>客户端

import 插座   import 操作系统   import 时间      def  Get_FilePath_FileName_FileExt(文件名):   ,filepath, tempfilename =, os.path.split(文件名)   ,shotname, extension =, os.path.splitext (tempfilename)   ,return  filepath shotname,扩展      时间=s  socket.socket (socket.AF_INET, socket.SOCK_DGRAM)      时间=filename 输入(& # 39;please  enter 从而filename 你want 用发送:\ n # 39;)   filepath, shotname, extension =, Get_FilePath_FileName_FileExt(文件名)      client_addr =, (& # 39; 127.0.0.1 # 39;, 9999)   f =, open (filename, & # 39; rb # 39;)   count =0   flag =1   while 真正的:   ,if  count ==, 0:   data 才能=,字节(shotname +扩展,encoding =,“utf8")   时间=start 才能;time.time ()   client_addr s.sendto才能(数据)=,,data  f.read (1024)   str(数据),if  !=,“b # 39; & # 39;“:   client_addr s.sendto才能(数据)   打印才能(str(数)+ & # 39;字节# 39;)      ,其他的:   s.sendto才能(& # 39;结束# 39;.encode (& # 39; utf - 8 # 39;), client_addr)   ,打破   数据的不同之处是,server_addr =, s.recvfrom (1024)   计数+=1   打印(& # 39;recircled& # 39; + str(计数)   s.close   最终获得=,time.time ()   打印(& # 39;成本# 39;+ str(圆(end-start, 2)) + & # 39; & # 39;)   #,for  data 拷贝(b # 39;迈克尔# 39;b # 39;特雷西# 39;,b # 39;莎拉# 39;):   #,,s.sendto(数据,(& # 39;127.0.0.1 # 39;,9999))   #,,print (s.recv (1024) .decode (& # 39; utf - 8 # 39;))   #,s.close ()

此次试验为100000字节大小的文件,运行后查看服务器端信息:

 python怎么实现UDP协议下的文件传输

客户端上查看传输时延:

 python怎么实现UDP协议下的文件传输

关于“python怎么实现UDP协议下的文件传输”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。

python怎么实现UDP协议下的文件传输