顯示具有 python 標籤的文章。 顯示所有文章
顯示具有 python 標籤的文章。 顯示所有文章

2016年6月23日 星期四

[python]照片批次縮小的小工具

應用情境:相機拍完的照片大小都大約是6~7MB,6000X4000解析度,但是自家用的螢幕解析度是1920X1080,我們在螢幕上看到的照片其實都是壓縮後的照片,換句話說如果只是在螢幕上觀看,或社群網站上觀看,是不需要那麼大的照片。所以我們可以撰寫一個小程式讓照片的長邊大小調整到1200,所以一張6000X4000的照片(6~7MB)可以調整成1200X800的解析度(~150kB),資料量整整少了25倍以上,但是視覺效果又看不出來,這對動輒上傳半天的活動照片而言,時間減少太多了,真的是很划得來。

使用到的函式庫:Image
程式說明:將原本照片存放到/original/這個新資料夾,然後將照片壓式寬度1200的照片

source code: resize.py

2011年2月20日 星期日

筆記:以python 為工具透過telnet 取得文字資訊遇到的編碼問題

目前的工作模式為使用pietty ssh到linux的工作站上工作,當使用telnetlib這個module取得bbs的文字時遇到了中文會出現亂碼的問題,當更改pietty字元編碼為big5時則能夠正常顯示,才發現成大電機風之谷ptt的中文字資料均以big5編碼,若是要在pietty字元編碼設定為utf-8時能夠正常顯示,需要將中文文字資料解碼(decode)為Unicode。

#取得big5編碼之文字資料
Content = TelnetObject.read_until('abc',2)
#解碼為Unicode
Content_Unicode = Content.decode('big5')
#觀察編碼
type(Content_Unicode)
#顯示
print Content_Unicode


註:windows 底下的cmd 預設使用big5編碼中文,所以不需經過decode也能夠正常的顯示;應用程式要特別小心使用者端的平台問題。

2010年6月30日 星期三

python:list reverse()

今天一不小心就重做了一個小輪子orz

要將數列(list)重反置(ex:[1,2,3,4]->[4,3,2,1])一開始沒有想到用(reverse,python)這一組關鍵字去查,就直接寫了


while 1:
   if len(b)>0:a.append(b.pop())
   else:break


在寫完的一瞬間就想到應該用什麼關鍵字(reverse)了,查了一下馬上就有答案:[list].reverse()。

有的時候不是如何避免重新製作的問題,而是面對的是自己的無知與經驗不足。如何使用精準、正確的關鍵字來解決眼前的問題,其實是考驗本身的`眼光'嗎XD