日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python圖像和辦公文檔處理總結(jié)

系統(tǒng) 1860 0

用程序來(lái)處理圖像和辦公文檔經(jīng)常出現(xiàn)在實(shí)際開(kāi)發(fā)中,Python的標(biāo)準(zhǔn)庫(kù)中雖然沒(méi)有直接支持這些操作的模塊,但我們可以通過(guò)Python生態(tài)圈中的第三方模塊來(lái)完成這些操作。

操作圖像

計(jì)算機(jī)圖像相關(guān)知識(shí)

顏色。如果你有使用顏料畫畫的經(jīng)歷,那么一定知道混合紅、黃、藍(lán)三種顏料可以得到其他的顏色,事實(shí)上這三種顏色就是被我們稱為美術(shù)三原色的東西,它們是不能再分解的基本顏色。在計(jì)算機(jī)中,我們可以將紅、綠、藍(lán)三種色光以不同的比例疊加來(lái)組合成其他的顏色,因此這三種顏色就是色光三原色,所以我們通常會(huì)將一個(gè)顏色表示為一個(gè)RGB值或RGBA值(其中的A表示Alpha通道,它決定了透過(guò)這個(gè)圖像的像素,也就是透明度)。

名稱 RGBA值 名稱 RGBA值
White (255, 255, 255, 255) Red (255, 0, 0, 255)
Green (0, 255, 0, 255) Blue (0, 0, 255, 255)
Gray (128, 128, 128, 255) Yellow (255, 255, 0, 255)
Black (0, 0, 0, 255) Purple (128, 0, 128, 255)

像素。對(duì)于一個(gè)由數(shù)字序列表示的圖像來(lái)說(shuō),最小的單位就是圖像上單一顏色的小方格,這些小方塊都有一個(gè)明確的位置和被分配的色彩數(shù)值,而這些一小方格的顏色和位置決定了該圖像最終呈現(xiàn)出來(lái)的樣子,它們是不可分割的單位,我們通常稱之為像素(pixel)。每一個(gè)圖像都包含了一定量的像素,這些像素決定圖像在屏幕上所呈現(xiàn)的大小。

用Pillow操作圖像

Pillow是由從著名的Python圖像處理庫(kù)PIL發(fā)展出來(lái)的一個(gè)分支,通過(guò)Pillow可以實(shí)現(xiàn)圖像壓縮和圖像處理等各種操作。可以使用下面的命令來(lái)安裝Pillow。

            
pip install pillow
          

Pillow中最為重要的是Image類,讀取和處理圖像都要通過(guò)這個(gè)類來(lái)完成。

            
>>> from PIL import Image
>>>
>>> image = Image.open('./res/guido.jpg')
>>> image.format, image.size, image.mode
('JPEG', (500, 750), 'RGB')
>>> image.show()
          

剪裁圖像

            
>>> image = Image.open('./res/guido.jpg')
>>> rect = 80, 20, 310, 360
>>> image.crop(rect).show()
          

python圖像和辦公文檔處理總結(jié)_第1張圖片

生成縮略圖

            
>>> image = Image.open('./res/guido.jpg')
>>> size = 128, 128
>>> image.thumbnail(size)
>>> image.show()
          

python圖像和辦公文檔處理總結(jié)_第2張圖片

縮放和黏貼圖像

            
>>> image1 = Image.open('./res/luohao.png')
>>> image2 = Image.open('./res/guido.jpg')
>>> rect = 80, 20, 310, 360
>>> guido_head = image2.crop(rect)
>>> width, height = guido_head.size
>>> image1.paste(guido_head.resize((int(width / 1.5), int(height / 1.5))), (172, 40))
          

旋轉(zhuǎn)和翻轉(zhuǎn)

            
>>> image = Image.open('./res/guido.png')
>>> image.rotate(180).show()
>>> image.transpose(Image.FLIP_LEFT_RIGHT).show()
          

操作像素

            
>>> image = Image.open('./res/guido.jpg')
>>> for x in range(80, 310):
...  for y in range(20, 360):
...   image.putpixel((x, y), (128, 128, 128))
... 
>>> image.show()
          

python圖像和辦公文檔處理總結(jié)_第3張圖片

濾鏡效果

            
>>> from PIL import Image, ImageFilter
>>>
>>> image = Image.open('./res/guido.jpg')
>>> image.filter(ImageFilter.CONTOUR).show()
          

python圖像和辦公文檔處理總結(jié)_第4張圖片

處理Excel電子表格

Python的openpyxl模塊讓我們可以在Python程序中讀取和修改Excel電子表格,當(dāng)然實(shí)際工作中,我們可能會(huì)用LibreOffice Calc和OpenOffice Calc來(lái)處理Excel的電子表格文件,這就意味著openpyxl模塊也能處理來(lái)自這些軟件生成的電子表格。關(guān)于openpyxl的使用手冊(cè)和使用文檔可以查看它的官方文檔。

處理Word文檔

利用python-docx模塊,Pytho 可以創(chuàng)建和修改Word文檔,當(dāng)然這里的Word文檔不僅僅是指通過(guò)微軟的Office軟件創(chuàng)建的擴(kuò)展名為docx的文檔,LibreOffice Writer和OpenOffice Writer都是免費(fèi)的字處理軟件。

處理PDF文檔

PDF是Portable Document Format的縮寫,使用.pdf作為文件擴(kuò)展名。接下來(lái)我們就研究一下如何通過(guò)Python實(shí)現(xiàn)從PDF讀取文本內(nèi)容和從已有的文檔生成新的PDF文件。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 建湖县| 枝江市| 龙胜| 阿克苏市| 玉树县| 嫩江县| 镶黄旗| 常山县| 炎陵县| 南丰县| 繁峙县| 吴旗县| 阳朔县| 宜州市| 乌拉特后旗| 康马县| 合江县| 巴彦县| 墨玉县| 河津市| 申扎县| 贡嘎县| 德清县| 姚安县| 平定县| 祁东县| 南江县| 桦川县| 东台市| 东山县| 社旗县| 西林县| 日土县| 库尔勒市| 达拉特旗| 武强县| 顺平县| 浑源县| 威远县| 小金县| 遂昌县|