python3.5基于TCP实现文件传输

yipeiwu_com5年前Python基础

本文实例为大家分享了python3.5基于TCP实现文件传输的具体代码,供大家参考,具体内容如下

服务器代码

# _*_ coding:utf-8 _*_

from socket import *
import _thread

def tcplink(skt,addr):
  print(skt)
  print(addr,"已经连接上...")
  print('开始发送文件')
  with open('./ww.jpg', 'rb') as f:
    for data in f:
      print(data)
      skt.send(data)
  f.close()
  skt.close()


HOST = "127.0.0.1"
PORT = 23333
ADDR = (HOST,PORT)

server = socket(AF_INET,SOCK_STREAM)
server.bind(ADDR)
server.listen(5)

while True:
  print("等待连接...")
  skt,addr = server.accept()
  print(skt)
  try:
    _thread.start_new_thread(tcplink,(skt,addr))
  except:
    print("线程无法启动")
server.close()

客户端代码

# _*_ utf-8 _*_

from socket import *

HOST = "127.0.0.1"
PORT = 23333
ADDR = (HOST,PORT)

client = socket(AF_INET,SOCK_STREAM)
client.connect(ADDR)

with open("./gg.jpg","ab") as f:
  while True:
    data = client.recv(1024)
    if not data:
      break;
    f.write(data)

f.close()
print("接收完毕")
client.close()

上面的代码都经过测试能正常运行,希望大家能有所启发。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python内存管理分析

python内存管理分析

本文较为详细的分析了python内存管理机制。分享给大家供大家参考。具体分析如下: 内存管理,对于Python这样的动态语言,是至关重要的一部分,它在很大程度上甚至决定了Python的执...

python实现彩票系统

本文为大家分享了python实现彩票系统的具体代码,供大家参考,具体内容如下 功能:1、注册  2、登录  3、充钱   4、提现  5...

python2和python3的输入和输出区别介绍

python2和python3的输入和输出区别介绍

Python3 输入和输出 输出格式美化 Python两种输出值的方式: 表达式语句和 print() 函数。 第三种方式是使用文件对象的 write() 方法,标准输出文件可以用 s...

基于Python实现拆分和合并GIF动态图

基于Python实现拆分和合并GIF动态图

“表情包”是当前社交软件上不可或缺的交流方式,难以用文字表达的意思,发一个“表情包”,对方就能心领神会。下面是小派制作的一个表情包,准确地讲,是在已有表情包的基础上,二次加工而成的。 下...

Python2 Selenium元素定位的实现(8种)

当我们想让 Selenium 自动地操作浏览器时,就必须告诉 Selenium 如何去定位某个元素或一组元素,每个元素都有着不同的标签名和属性值,Selenium 提供了以下8种定位元素...