python io模块

原创 2016年08月29日 00:12:54

StringIO

StringIO顾名思义就是在内存中读写str。

要把str写入StringIO,我们需要先创建一个StringIO,然后,像文件一样写入即可:

from io import StringIO
f = StringIO()
print(f.write('hello py1 '))  # 10
print(f.write('hello py2 '))  # 10
print(f.write('hello py3 '))  # 10
print(f.getvalue()) # hello py1 hello py2 hello py3

要读取StringIO,可以用一个str初始化StringIO,然后,像读文件一样读取:

from io import StringIO
f = StringIO('Hello!\nHi!\nGoodbye!')
print(f.read())

StringIO操作的只能是str,如果要操作二进制数据,就需要使用BytesIO

from io import BytesIO
f = BytesIO() 
print(f.write('中文'.encode('utf-8')))
# 请注意,写入的不是str,而是经过UTF-8编码的bytes

print(f.getvalue()) # b'\xe4\xb8\xad\xe6\x96\x87'

BytesIO

和StringIO类似,也可以用一个bytes初始化BytesIO,然后,像读文件一样读取:

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

StringIO和BytesIO是在内存中操作str和bytes的方法,使得和读写文件具有一致的接口。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

python3 模块math(数学公式)

import math 函数说明 abs(number)返回数字的绝对值,如abs(-10) 返回 10 pow(x,y[,z]) 返回x的y次幂(所得结果对z取模),如pow...

怎样从0开始搭建一个测试框架_7——接口

用requests库封装HTTPClient,用于http接口测试。其他接口寻找对应库。

Python文件读写IO操作

Python中的文件读写操作: 我想大部分的编程语言的文件读写操作都不会有太大差别基本上都是按照以下的步骤执行的: open打开文件 read,write读或写文件 close关闭文件 应牢...

Python中IOBase详解

class io.IOBase  这个类是所有I/O类的抽象基类,作用于字节流。没有公共的构造函数。  该类为许多方法提供了空的抽象的实现,派生类可以有选择的进行覆盖实现。默认的实现代表一个不能读取,...

python IO编程

1、文件读写# IO编程 # 文件读写f = open('text.txt','r') # 标示符'r'表示读 str = f.read() print(str) f.close()如果文件不存在,o...

Python pandas.io.data 模块迁移

pandas.io.data功能迁移到了pandas_datareader这个模块里面,相应的用法也发生了改变,那么我们如何解决这些改变带来的问题呢?

Python 12:Python 文件io操作模块

Python 文件io操作模块介绍IO操作是每种程序设计语言都会设计的模块,python的io操作设计的和C语言很类似,比较简便实用.反观Java语言对于io操作设计的模块就比较抽象和灵活,这也导致j...

网络卸载模块,开放源代码-WIZ820io用户手册

大家好,WIZnet推出了网络卸载模块,开放源代码的WIZ820io啦,今天我给大家分享一下它的源代码吧 ~~ 1. 简介 WIZ820io是一个高度集成的以太网控制模块,其集成了全硬件TCP/I...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)