python IO编程-StringIO和BytesIO
生活随笔
收集整理的這篇文章主要介紹了
python IO编程-StringIO和BytesIO
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
鏈接:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431918785710e86a1a120ce04925bae155012c7fc71e000
StringIO和BytesIO?提供了一種在內存中對字符串和byte類型數據的操作方法,使得和讀寫文件具有一致的接口。StringIO只能操作str對象,而BytesIO操作的對象是bytes
?
寫入:
1.導入對應模塊
2.創建相應的對象
3.調用對象的write()方法
注意:BytesIO寫入的不是str而是經過UTF-8編碼的bytes
讀取:
注意:不能通過上面創建的對象直接讀取,而是通過上面對象調用getvalue()方法返回的數據來初始化一個新的StringIO或者BytesIO對象,然后在讀取,剩下的讀取步驟和文件的讀取一樣
#StringIO的寫入 >>> from io import StringIO#導入模塊 >>> f = StringIO()#創建對象 >>> f.write('hello')#寫 5 >>> f.write(' ') 1 >>> f.write('world!') 6 >>> print(f.getvalue()) hello world! #讀取 #直接調用會為空 >>> f.read() ' ' >>> f=StringIO(f.getvalue()) >>> f.read() 'hello world'#BytesIO >>> from io import BytesIO >>> f=BytesIO() >>> f.write('中文'.encode('utf-8')) 6 >>> print(f.getvalue()) b'\xe4\xb8\xad\xe6\x96\x87' >>> f.read() b'' >>> f=BytesIO(f.getvalue()) >>> f.read() b'\xe4\xb8\xad\xe6\x96\x87'
轉載于:https://www.cnblogs.com/Gaoqiking/p/10566454.html
總結
以上是生活随笔為你收集整理的python IO编程-StringIO和BytesIO的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python基础-文件操作(10)
- 下一篇: 京东AI研究院何晓冬:将先进的技术和模型