随笔- 310  文章- 1  评论- 0  阅读- 86066 

StringIO

要把 str 字符串写入内存中,我们需要创建一个 StringIO 对象,然后像文件一样对读取内容。其中 StringIO 中多了一个 getvalue() 方法,目的是用于获取写入后的 str。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 定义一个 StringIO 对象,写入并读取其在内存中的内容
from io import StringIO
 
f = StringIO()
 
f.write('Python-100')
str = f.getvalue()
print('写入内存中的字符串为:%s' %str)
 
f.write('\n') # 追加写入内容
f.write('坚持100天')
str = f.getvalue()  # getvalue() 可以读取到 StringIO 中的所有内容
print('写入内存中的字符串为:\n%s' %str)
 
f.close() # 释放内存中的数据,后续不可再对该 StringIO 进行内容的读写操作
 
# 输出结果
# 写入内存中的字符串为:
# Python-100
# 写入内存中的字符串为:
# Python-100
# 坚持100天

 

BytesIO

1
2
3
4
5
6
7
8
9
10
11
# 定义一个 BytesIO 对象,写入并读取其在内存中的内容
 
from io import BytesIO
 
str = 'Python-100' + '\n' + '坚持100天'
 
f = BytesIO(str.encode('utf-8'))
 
print('写入内存的字节为:%s' %f.getvalue())
 
print('字节解码后内容为:\n%s' %f.getvalue().decode('utf-8'))

  

 

 posted on   boye169  阅读(50)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示