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写的ARP攻击代码实例
Jun 04 Python
Python实现动态加载模块、类、函数的方法分析
Jul 18 Python
python使用TensorFlow进行图像处理的方法
Feb 28 Python
Python3解释器知识点总结
Feb 19 Python
python使用参数对嵌套字典进行取值的方法
Apr 26 Python
python pandas时序处理相关功能详解
Jul 03 Python
Python FFT合成波形的实例
Dec 04 Python
PyCharm 专业版安装图文教程
Feb 20 Python
Python3.x+pyqtgraph实现数据可视化教程
Mar 14 Python
用Python在Excel里画出蒙娜丽莎的方法示例
Apr 28 Python
python反扒机制的5种解决方法
Feb 06 Python
Python爬虫实战之爬取携程评论
Jun 02 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
基于PHP5魔术常量与魔术方法的详解
2013/06/13 PHP
php 获取SWF动画截图示例代码
2014/02/10 PHP
C#使用PHP服务端的Web Service通信实例
2014/04/08 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
javascript高亮效果的二种实现方法
2008/09/14 Javascript
一个背景云变换js特效 鼠标移动背景云变化
2012/12/28 Javascript
jQuery给动态添加的元素绑定事件的方法
2015/03/09 Javascript
js去除浏览器默认底图的方法
2015/06/08 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
2015/08/11 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
Javascript 实现微信分享(QQ、朋友圈、分享给朋友)
2016/10/21 Javascript
js 能实现监听F5页面刷新子iframe 而父页面不刷新的方法
2016/11/09 Javascript
微信小程序 flex实现导航实例详解
2017/04/26 Javascript
浅谈ng-zorro使用心得
2018/12/03 Javascript
js+css实现全屏侧边栏
2020/06/16 Javascript
Vue自定义多选组件使用详解
2020/09/08 Javascript
Python整型运算之布尔型、标准整型、长整型操作示例
2017/07/21 Python
python中hashlib模块用法示例
2017/10/30 Python
python中in在list和dict中查找效率的对比分析
2018/05/04 Python
Laravel+Dingo/Api 自定义响应的实现
2019/02/17 Python
pandas中DataFrame修改index、columns名的方法示例
2019/08/02 Python
python图形绘制奥运五环实例讲解
2019/09/14 Python
Python 简单计算要求形状面积的实例
2020/01/18 Python
探秘TensorFlow 和 NumPy 的 Broadcasting 机制
2020/03/13 Python
Python Pandas list列表数据列拆分成多行的方法实现
2020/12/14 Python
世界上第一个水枕头:Mediflow
2018/12/06 全球购物
使用useBean标志初始化BEAN时如何接受初始化参数
2012/02/11 面试题
工程专业应届生求职信
2014/02/19 职场文书
开业主持词
2014/03/21 职场文书
警示教育活动总结
2014/05/05 职场文书
法定代表人授权委托书范文
2014/08/02 职场文书
学校四风对照检查材料
2014/08/28 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书
2015年汽车销售工作总结
2015/04/07 职场文书
公积金贷款承诺书
2015/04/30 职场文书
惹女朋友生气检讨书
2015/05/06 职场文书