Binary I/O

字节对象,不会执行编码,解码和换行符转换操作.
硬盘读写

f = open("myfile.jpg", "rb")

内存读写

from io import BytesIO # 和StringIO类似
bytes_io = BytesIO('王'.encode('utf-8'))
bytes_io.getvalue().decode('utf-8')

内存读写应用,省略了保存到硬盘的步骤

from PIL import Image
from io import BytesIO
i = Image.open(BytesIO(r.content))

应用

写入BytesIO的方法有两种
一种在初始化的时候创建:

from io import BytesIO # 和StringIO类似
bytes_io = BytesIO('王'.encode('utf-8'))
bytes_io.getvalue().decode('utf-8')

另一种是将其他文件保存到此处:

buf = BytesIO()  #另一种写入BytesIO的方法
plt.savefig(buf,format='png') #另一种写入BytesIO的方法
from jinja2 import Template,FileSystemLoader,Environment
env = Environment(loader=FileSystemLoader("./"))
template = env.get_template("./test.html")import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
plt.plot(x,y)
from io import BytesIO
buf = BytesIO()  #另一种写入BytesIO的方法
plt.savefig(buf,format='png') #另一种写入BytesIO的方法
import base64
data = base64.b64encode(buf.getvalue()).decode()
data = "data:image/png;base64," + data
temp_render = template.render(name=data)
print(temp_render)
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><img src="{{ name }}"></body>
</html>

python Binary I/O相关推荐

  1. python binary lib on win/各种python库的二进制包

    虽然很不愿意在windows上折腾python,但有时linux不在身边的时候还得在windows上写代码.很久之前找到这个地址,后来忘了,今天搜了半天才把它找到,所以记录一下. http://www ...

  2. matlab有shapely包吗,python binary lib on win/各种python库的二进制包

    虽然很不愿意在windows上折腾python,但有时linux不在身边的时候还得在windows上写代码.很久之前找到这个地址,后来忘了,今天搜了半天才把它找到,所以记录一下. 以上页面提供各种编译 ...

  3. 在Ubuntu 16.04.6 LTS升级python 3.5.x到3.7.3之后导致gnome-ternimal无法打开的解决办法

    在前一篇博文 https://blog.csdn.net/tao_627/article/details/90901830 中,我顺利将python 3.5.x升级到3.7.3,发现一切都正常,运行 ...

  4. Python常见问题(5):Python扩展与嵌入 Extending/Embedding FAQ

    Contents Extending/Embedding FAQ Can I create my own functions in C? Can I create my own functions i ...

  5. Python常见问题(2):编程问题 Programming FAQ

    Contents Programming FAQ General Questions Is there a source code level debugger with breakpoints, s ...

  6. Python JAVA Solutions for Leetcode

    Python & JAVA Solutions for Leetcode (inspired by haoel's leetcode) Remember solutions are only ...

  7. 《Pyflink》Flink集群安装,Python+Flink调研

    Flink集群安装,Python+Flink调研 Flink集群部署 下载对应版本安装包:https://flink.apache.org/downloads.html 实验环境为hadoop2.7, ...

  8. python调用窗口找到文件,使用Python在Mac OS X中查找当前活动窗口

    Is there a way to find the application name of the current active window at a given time on Mac OS X ...

  9. python 系统编程

    进程 进程|Process|Pool|Event|os.fork|zombies|getpid 共享数据|Lock|Semaphore|线程安全对象 subprocess|os.system|os.e ...

最新文章

  1. diou ciou torch
  2. Java Socket
  3. 如何复制粘贴_年终工作总结如何写?复制粘贴肯定不行啦
  4. python爬虫qq音乐教学视频_爬取QQ音乐(讲解爬虫思路)
  5. Hystrix在网关Zuul使用中遇到问题
  6. 利用正则匹配url是否合法对于有的url会浪费过长时间使程序卡死,切记!
  7. bootstrap table 搜索列formatter之后,单字节搜索异常
  8. 作者:姚阳(1979-),女,广州市社会科学院经济学副研究员。
  9. 查看mysql状态常用命令
  10. bash脚本创建变量_创建一个Bash脚本模板
  11. 2018青岛大学计算机考研真题,2018年青岛大学师范学院880数学基础综合[专业硕士]之数学分析考研基础五套测试题...
  12. C语言字母标题,C语言题目!!
  13. Mybatis if标签
  14. 简约的手机APP自适应下载页HTML源码
  15. java jdbc 链接pg_使用PostgreSQL JDBC连接池
  16. Linux查看日志命令,压缩日志不解压直接查看
  17. 三菱机床的程序传输(DNC)支持上传到CF卡
  18. 使用Springboot+Feign Clients快速搭建REST客户端应用
  19. 《Git与Github使用笔记》第12章 Pull Request的使用
  20. Windows下HdWiki安装步骤

热门文章

  1. 1000道Python题库系列分享十一(9道)
  2. 计算机硬件如何分类,计算机硬件分类教学.doc
  3. ajax响应不显示值,Ajax响应200正常,但显示未能加载响应数据
  4. linux mysql5.7.18多实例_mysql5.7.13二进制包安装多实例
  5. 单播 广播 组播_组播概念3
  6. 力扣买卖股票系列总结
  7. unity常连接mysql,Unity使用BestHttp插件时Socket.IO保持长连接的问题
  8. 安装php扩展phpredis,安装php扩展phpredis
  9. 机器学习实战 梯度上升 数学推导_机器学习全路线经典书籍
  10. android 保存图片出现2张_OriCell第三届细胞培养图片大赛来啦~ - 实验动物