每次都要來這麼一下。
不過,今次是本人首次獲得昇等優遇,特別紀念 :)
Posted by yungyuc
at 09:54,
0 comment,
0 trackback.
每次都要來這麼一下。
不過,今次是本人首次獲得昇等優遇,特別紀念 :)
bazaar-ng 有寫個 bzr.bat 給 Windows (NT) 使用者,不過 mercurial 沒附 hg.bat,請自己寫一個:
@C:\Python25\python.exe C:\Python25\Scripts\hg %*
剛剛用比較客觀的角度說明在縮排 Python 程式時會遇到的問題,以及我們應該注意的地方。
不過,其實我還是有主觀的看法。我覺得,照我的習慣,Python 的縮排簡單得很,用不著考慮那麼多了。那就是,固定用四個空白字元進行縮排。
» continue reading昨天在某頻道和 thinker 與 ping 大戰 Python 程式碼該如何縮排。老實說這還真是觸動所有 Python 程式員敏感神經的事。幸好,我們三人各執一端,看來是把可能出現的狀況都吵了一遍 (呃,至少吵得差不多了吧)。
因此,我把 Python 縮排上需要注意的地方,以及昨天討論的成果作個整理。當然,從後文你或許看得出來我是如何進行縮排的 (笑),所以描述上若有偏頗的地方全都是我的錯 (畢竟我懶得改編輯器的設定啦)。
» continue reading版權沒有,翻印不究。
# -*- coding: UTF-8 -*-
import sys, os
from urllib import urlretrieve
def ratio_changed(ratio, last_ratio, tick):
return int(ratio/tick)-int(last_ratio/tick) > 0
last_ratio = 0.
def report(block, size, total):
global last_ratio
ratio = float(block)*size/total*100
if ratio_changed(ratio, last_ratio, 10):
sys.stdout.write("%.1f%%"%ratio)
elif ratio_changed(ratio, last_ratio, 1):
sys.stdout.write(".")
last_ratio = ratio
if len(sys.argv) < 2:
sys.stdout.write("Please specify a url.\n")
sys.exit()
url = sys.argv[1]
filename = url.split('/')[-1]
os.unlink(filename)
sys.stdout.write("[start]")
urlretrieve(url,filename,report)
sys.stdout.write("[done]\n")
sys.stdout.write("%s saved.\n"%filename)