Day24:IO模組的使用
今天學習IO模組的使用,主要分為StringIO的使用和BytesIO的使用~
1.StringIO的使用
# 類似檔案的緩衝區
from io import StringIO
cache_file = StringIO()
print(cache_file.write('hello world')) # 11
print(cache_file.seek(0)) # 0
print(cache_file.read()) # hello world
print(cache_file.close()) # 釋放緩衝區
-
StringIO經常被用來作字串的快取,因為StringIO的一些介面和檔案操作是一致的,也就是說同樣的程式碼,可以同時當成檔案操作或者StringIO操作;
-
要讀取StringIO,可以用一個str初始化StringIO,然後像讀檔案一樣讀取;
-
當使用read()方法讀取寫入的內容時,則需要先用seek()方法讓指標移動到最開始的位置,否則讀取不到內容(寫入後指標在最末尾);
-
getvalue()方法:直接獲得寫入後的str;
-
close()方法:在關閉檔案的緩衝區之後就不能再進行讀寫操作了;
2.BytesIO的使用
# 類似檔案的緩衝區
from io import BytesIO
bytes_file = BytesIO()
bytes_file.write(b'hello world')
bytes_file.seek(0)
print(bytes_file.read()) # b'hello world'
bytes_file.close()
-
StringIO操作的只能是str,如果要操作二進位制資料,就需要使用BytesIO;
-
BytesIO實現了在記憶體中讀寫bytes,寫入的不是str,而是經過UTF-8編碼的bytes;
-
要讀取BytesIO,可以用一個bytes初始化BytesIO,然後像讀檔案一樣讀取;
相關文章
- python記錄day24 模組的語法Python
- Python 2.7.4釋出,更快的IO模組Python
- day24打卡
- Vue-Socket.io的使用Vue
- python IO模組【二】:open函式詳解Python函式
- IO的資料集使用案例
- pymysql模組的使用MySql
- wtforms模組的使用ORM
- Profinet遠端IO模組:模擬量模組_軟體組態說明
- 深入理解nodejs的非同步IO與事件模組機制NodeJS非同步事件
- C語言 檔案IO的使用C語言
- Go 中 io 包的使用方法Go
- 使用cgroup 限制程式的磁碟io
- Java中常見的IO流及其使用Java
- Flask:sqlalchemy模組的使用FlaskSQL
- glom模組的使用(一)
- glom模組的使用(二)
- draw.io使用教程
- 插片式遠端 IO模組:雙通道PNP和NPN高速計數模組案例說明
- BeautifulSoup模組的使用方法
- Python中模組的使用Python
- 傳智黑馬java基礎學習——day24Java
- 插片式遠端IO模組:單通道PNP和NPN編碼器模組功能和安裝方法
- Python 中argparse模組的使用Python
- 爬蟲-urllib模組的使用爬蟲
- odoo的Aeroo Reports模組使用。Odoo
- ruby_expect模組的使用..薦
- 使用iostat檢視磁碟IOiOS
- 使用nginx搭建creates.io映象Nginx
- draw.io 使用自定義字型自定義字型
- NOIP集訓Day24 DP常見模型3 - 區間模型
- 使用SecureLink模組
- IO模式和IO多路複用(阻塞IO、非阻塞IO、同步IO、非同步IO等概念)模式非同步
- 【IO】Linux下的五種IO模型Linux模型
- Java 基於字元的IO Char Based IOJava字元
- 標準io和系統io的辨析
- 使用typescript開發angular模組(編寫模組)TypeScriptAngular
- node.js之path模組的使用Node.js