Python内存读写操作示例


Posted in Python onJuly 18, 2018

本文实例讲述了Python内存读写操作。分享给大家供大家参考,具体如下:

Python中的读写不一定只是文件,还有可能是内存,所以下面实在内存中的读写操作

示例1:

# -*- coding:utf-8 -*-
#! python3
from io import StringIO
f=StringIO()
f.write('everything')
f.write('is')
f.write('possible')
print(f.getvalue())

运行结果:

everythingispossible

在内存中新建一个StringIO,然后进行写入

获取的时候用的是getvalue()函数

而读取的时候可以用一个循环判断,比如:

示例2:

# -*- coding:utf-8 -*-
#! python3
f=StringIO('everything is possible')
while True:
  s=f.readline()
  if s=='':
    break
  print(s.strip())

运行结果:

everything is possible

同理,可以操作不只是str,还可以是二进制数据,所以会用到BytesIO

from io import BytesIO
>>> f = BytesIO()
>>> f.write('中文'.encode('utf-8'))
6
>>> print(f.getvalue())
b'\xe4\xb8\xad\xe6\x96\x87'

如下图所示:

 Python内存读写操作示例

而写入同时也是:

>>> from io import BytesIO
>>> f = BytesIO(b'\xe4\xb8\xad\xe6\x96\x87')
>>> f.read()
b'\xe4\xb8\xad\xe6\x96\x87'

注:这里的测试环境为Python3,如果使用Python2运行上述示例1的话会提示如下错误:

Traceback (most recent call last):
  File "C:\py\3waterPyDemo\src\Demo\strIODemo.py", line 5, in <module>
    f.write('everything')
TypeError: unicode argument expected, got 'str'

解决方法为将

from io import StringIO

更换成:

from io import BytesIO as StringIO

即可运行得到正常结果!

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python ddt实现数据驱动
Mar 14 Python
Django读取Mysql数据并显示在前端的实例
May 27 Python
python中单例常用的几种实现方法总结
Oct 13 Python
用python3教你任意Html主内容提取功能
Nov 05 Python
python绘制多个子图的实例
Jul 07 Python
pytorch 常用线性函数详解
Jan 15 Python
Python中的xlrd模块使用原理解析
May 21 Python
Python爬虫实现百度翻译功能过程详解
May 29 Python
Python自动化操作实现图例绘制
Jul 09 Python
python 深度学习中的4种激活函数
Sep 18 Python
python3实现Dijkstra算法最短路径的实现
May 12 Python
Tensorflow与RNN、双向LSTM等的踩坑记录及解决
May 31 Python
NumPy 数学函数及代数运算的实现代码
Jul 18 #Python
Sanic框架应用部署方法详解
Jul 18 #Python
Python Web编程之WSGI协议简介
Jul 18 #Python
使用 Python 实现文件递归遍历的三种方式
Jul 18 #Python
详解flask入门模板引擎
Jul 18 #Python
Sanic框架基于类的视图用法示例
Jul 18 #Python
flask入门之表单的实现
Jul 18 #Python
You might like
php长字符串定义方法
2012/07/12 PHP
PHP异常处理浅析
2015/05/12 PHP
php基本函数汇总
2015/07/09 PHP
symfony2.4的twig中date用法分析
2016/03/18 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
XML的代替者----JSON
2007/07/21 Javascript
jQuery 快速结束当前正在执行的动画
2013/11/20 Javascript
js的toLowerCase方法用法实例
2015/01/27 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
2016/06/28 Javascript
Node.js 文件夹目录结构创建实例代码
2016/07/08 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
ionic开发中点击input时键盘自动弹出
2016/12/23 Javascript
Angular2中select用法之设置默认值与事件详解
2017/05/07 Javascript
详解Node.js利用node-git-server快速搭建git服务器
2017/09/27 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
重学JS之显示强制类型转换详解
2019/06/30 Javascript
js面向对象之实现淘宝放大镜
2020/01/15 Javascript
Vue项目页面跳转时浏览器窗口上方显示进度条功能
2020/03/26 Javascript
Python 文件读写操作实例详解
2014/03/12 Python
python2使用bs4爬取腾讯社招过程解析
2019/08/14 Python
Pandas数据离散化原理及实例解析
2019/11/16 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
flask利用flask-wtf验证上传的文件的方法
2020/01/17 Python
Python 制作查询商品历史价格的小工具
2020/10/20 Python
python绘图pyecharts+pandas的使用详解
2020/12/13 Python
Daisy London官网:英国最大的首饰集团IBB旗下
2019/02/28 全球购物
美国工业用品采购网站:Zoro.com
2020/10/27 全球购物
临床医学系毕业生推荐信
2013/11/09 职场文书
往来会计岗位职责
2013/12/19 职场文书
社区十八大感言
2014/01/19 职场文书
酒店大堂副理的职责范文
2014/02/13 职场文书
承租经营合作者协议书
2014/10/01 职场文书
优秀团员个人总结
2015/02/26 职场文书
如何书写授权委托书?
2019/06/25 职场文书
加薪申请书应该这样写!
2019/07/04 职场文书
Mysql 如何查询时间段交集
2021/06/08 MySQL