Skip to Content
Python 技術手冊 第三版
book

Python 技術手冊 第三版

by lex Martelli, Anna Martelli Ravenscroft, Steve Holden
January 2018
Intermediate to advanced content levelIntermediate to advanced
856 pages
17h 17m
Chinese
GoTop Information, Inc.
Content preview from Python 技術手冊 第三版
328
|
10 章 檔案與文字作業
記憶體內部的「檔案」:io.StringIO
io.BytesIO
你可以撰寫提供你所需方法的 Python 類別來實作類檔案物件(file-like
objects)。如果你想要的只是資料留存在記憶體中,而非在作業系統所見
的檔案上,就用
io
模組的類別
StringIO
BytesIO
。它們之間的差異在
於,
StringIO
的實體是文字模式的「檔案」,所以讀取或寫入會消耗或產生
Unicode 字串,而
BytesIO
的實體是二進位的「檔案」,所以讀取或寫入會
消耗或產生 bytestrings(位元組字串)。
實體化其中任一個類別時,你可以選擇性地傳入一個字串引數,分別是
Unicode bytes,來用作該「檔案」的初始內容。兩者中任一個類別的實
f
,除了「檔案」的方法,還提供一個額外的方法:
getvalue f.getvalue()
f
目前的資料內容回傳為一個字串(文字的或位元組的)。你無法在呼
f.close
之後呼叫
f.getvalue
close
會釋放
f
內部所維護的緩衝區,而
getvalue
需要回傳該緩衝區作為結果。
壓縮檔
儲存空間和傳輸頻寬越來越便宜與充沛,但在許多情況中,你可以藉由壓
縮(compression),花費一些額外的計算成本來節省這種資源。計算能力
變便宜且充裕的速度甚至比其他的某些資源(例如頻寬)還要快,所以壓
縮受歡迎的程度持續增長。Python 能讓你的程式輕易地支援壓縮,因為
Python 標準程式庫含有數個壓縮專用的模組。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

測試驅動開發|使用 Python

測試驅動開發|使用 Python

Harry J.W. Percival
Linux 内核观测技术BPF

Linux 内核观测技术BPF

David Calavera, Lorenzo Fontana

Publisher Resources

ISBN: 9789864766819