欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python使用StringIO和BytesIO讀寫內(nèi)存數(shù)據(jù)

 更新時間:2022年05月28日 09:04:18   作者:springsnow  
這篇文章介紹了Python使用StringIO和BytesIO讀寫內(nèi)存數(shù)據(jù)的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

流讀寫

很多時候,數(shù)據(jù)讀寫不一定是文件,也可以在內(nèi)存中讀寫。

1、StringIO:在內(nèi)存中讀寫str。

要把str寫入StringIO,我們需要先創(chuàng)建一個StringIO,然后,像文件一樣寫入即可:

getvalue()方法用于獲得寫入后的str。

from io import StringIO
f = StringIO()
f.write('hello')
f.write(' ')
f.write('world!')
print(f.getvalue()) #hello world!

要讀取StringIO,可以用一個str初始化StringIO,然后,像讀文件一樣讀取:

from io import StringIO
f = StringIO('Hello!\nHi!\nGoodbye!')
while True:
        s = f.readline()
        if s == '':
            break
        print(s.strip())
# Hello! 
# Hi! 
# Goodbye!

2、BytesIO:在內(nèi)存中讀寫bytes

StringIO操作的只能是str,如果要操作二進制數(shù)據(jù),就需要使用BytesIO。

BytesIO實現(xiàn)了在內(nèi)存中讀寫bytes,我們創(chuàng)建一個BytesIO,然后寫入一些bytes:

請注意,寫入的不是str,而是經(jīng)過UTF-8編碼的bytes。

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

和StringIO類似,可以用一個bytes初始化BytesIO,然后,像讀文件一樣讀?。?/p>

from io import BytesIO
f = BytesIO(b'\xe4\xb8\xad\xe6\x96\x87')
f.read().decode('utf-8')  # '中文'

3、小結(jié)

StringIO和BytesIO是在內(nèi)存中操作str和bytes的方法,使得和讀寫文件具有一致的接口。

到此這篇關(guān)于Python使用StringIO和BytesIO讀寫內(nèi)存數(shù)據(jù)的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Pandas將列表(List)轉(zhuǎn)換為數(shù)據(jù)框(Dataframe)

    Pandas將列表(List)轉(zhuǎn)換為數(shù)據(jù)框(Dataframe)

    這篇文章主要介紹了Pandas將列表(List)轉(zhuǎn)換為數(shù)據(jù)框(Dataframe),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • python爬蟲框架scrapy實現(xiàn)模擬登錄操作示例

    python爬蟲框架scrapy實現(xiàn)模擬登錄操作示例

    這篇文章主要介紹了python爬蟲框架scrapy實現(xiàn)模擬登錄操作,結(jié)合實例形式分析了scrapy框架實現(xiàn)模擬登陸操作的步驟、相關(guān)實現(xiàn)技巧與注意事項,需要的朋友可以參考下
    2018-08-08
  • Win10下Python環(huán)境搭建與配置教程

    Win10下Python環(huán)境搭建與配置教程

    這篇文章主要為大家詳細介紹了Windows10下Python環(huán)境搭建與配置,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • 打印出python 當(dāng)前全局變量和入口參數(shù)的所有屬性

    打印出python 當(dāng)前全局變量和入口參數(shù)的所有屬性

    打印出python 當(dāng)前全局變量和入口參數(shù)的所有屬性的實現(xiàn)代碼。
    2009-07-07
  • python如何用matplotlib創(chuàng)建三維圖表

    python如何用matplotlib創(chuàng)建三維圖表

    這篇文章主要介紹了python如何在matplotlib中創(chuàng)建三維圖表,幫助大家更好的利用python進行數(shù)據(jù)分析,感興趣的朋友可以了解下
    2021-01-01
  • 四個Python操作Excel的常用腳本分享

    四個Python操作Excel的常用腳本分享

    在數(shù)字化時代,很多人工作中經(jīng)常和excel打交道。本文和大家分享四個Python操作excel的腳本,讓你工作效率更高,需要的小伙伴可以參考一下
    2022-11-11
  • python私有屬性和方法實例分析

    python私有屬性和方法實例分析

    這篇文章主要介紹了python私有屬性和方法的用法,實例分析了python私有屬性和方法的原理及具體使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • Python實現(xiàn)實時監(jiān)測可視化數(shù)據(jù)大屏

    Python實現(xiàn)實時監(jiān)測可視化數(shù)據(jù)大屏

    實時監(jiān)測的可視化數(shù)據(jù)大屏是一種非常有用的工具,可以幫助我們實時了解數(shù)據(jù)的變化和趨勢,下面我們將介紹如何使用Python代碼實現(xiàn)實時監(jiān)測的可視化數(shù)據(jù)大屏,需要的可以參考一下
    2023-06-06
  • Django nginx配置實現(xiàn)過程詳解

    Django nginx配置實現(xiàn)過程詳解

    這篇文章主要介紹了Django nginx配置實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • 詳解pytest實現(xiàn)mark標(biāo)記功能詳細介紹

    詳解pytest實現(xiàn)mark標(biāo)記功能詳細介紹

    這篇文章主要介紹了詳解pytest實現(xiàn)mark標(biāo)記功能詳細介紹,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評論