#!/usr/bin/python3
import sys
def humanbytes(b):
'return the given bytes as a human friendly kb, mb, gb, or tb string'
b = float(b)
kb = float(1024)
mb = float(kb ** 2) # 1,048,576
gb = float(kb ** 3) # 1,073,741,824
tb = float(kb ** 4) # 1,099,511,627,776
if b < kb:
return ' '.format(b,'bytes' if 0 == b > 1 else 'byte')
elif kb <= b < mb:
return ' kb'.format(b/kb)
elif mb <= b < gb:
return ' mb'.format(b/mb)
elif gb <= b < tb:
return ' gb'.format(b/gb)
elif tb <= b:
return ' tb'.format(b/tb)
def progres(num, sum):
"""顯示上傳進度條
num:已上傳大小
sum:檔案總大小
#l:定義進度條大小
"""bar_length = 50 # 定義進度條大小
percent = float(num) / float(sum)
hashes = '=' * int(percent * bar_length) # 定義進度顯示的數量長度百分比
spaces = ' ' * (bar_length - len(hashes)) # 定義空格的數量=總長度-顯示長度
sys.stdout.write(
"\r傳輸中: [%s] %d%% %s/%s " % (hashes + spaces, percent * 100, humanbytes(num), humanbytes(sum))) # 輸出顯示進度條
sys.stdout.flush() # 強制重新整理到螢幕
Python檔案傳輸模組ftplib
ftplib是基於ftp協議實現的乙個python模組 from ftplib import ftp 建立乙個ftp連線物件 ftp ftp 當帶有引數時,即 ftp ftp host,user,passwd,acct 會進行方法呼叫connect host 當給出使用者時,另外進行方法呼叫 其中p...
Python的Tqdm模組 進度條配置
tqdm 是乙個快速,可擴充套件的python進度條,可以在 python 長迴圈中新增乙個進度提示資訊,使用者只需要封裝任意的迭代器 tqdm iterator 總之,它是用來顯示進度條的,很漂亮,使用很直觀 在迴圈體裡邊加個tqdm 而且基本不影響原程式效率。名副其實的 太強太美 了!這樣在寫執...
Python的Tqdm模組 進度條配置
from tqdm 是乙個快速,可擴充套件的python進度條,可以在 python 長迴圈中新增乙個進度提示資訊,使用者只需要封裝任意的迭代器 tqdm iterator 總之,它是用來顯示進度條的,很漂亮,使用很直觀 在迴圈體裡邊加個tqdm 而且基本不影響原程式效率。名副其實的 太強太美 了!...