W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
如前所述, ?Image
?模塊的?open()
?功能用于打開圖像文件。在大多數(shù)情況下,只需將文件名作為參數(shù)傳遞給它。? Image.open()
? 可以用作上下文管理器:
from PIL import Image
with Image.open("hopper.ppm") as im:
...
如果一切順利,結(jié)果是 ?PIL.Image.Image
?對象。否則, ?OSError
?引發(fā)異常。
您可以使用類似文件的對象,而不是文件名。對象必須實現(xiàn) ?file.read
?, ?file.seek
? 和 ?file.tell
?方法,并以二進制模式打開。
from PIL import Image
with open("hopper.ppm", "rb") as fp:
im = Image.open(fp)
要從二進制數(shù)據(jù)中讀取圖像,請使用 ?BytesIO
?類:
from PIL import Image
import io
im = Image.open(io.BytesIO(buffer))
請注意,在讀取圖像頭之前,庫會倒帶文件(使用 ?seek(0)
?)。此外,當(dāng)讀取圖像數(shù)據(jù)時(通過加載方法),也將使用SEEK。如果圖像文件嵌入到較大的文件中,例如tar文件,則可以使用 ?ContainerIO
?或 ?TarIO
?訪問它的模塊。
from PIL import Image, TarIO
fp = TarIO.TarIO("Tests/images/hopper.tar", "hopper.jpg")
im = Image.open(fp)
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: