2011年03月21日

[Python]コンソールのプログレスバー for Python2.7

この数日で、Pythonを2.7にVerUpさせた。
今まで使ってたプログレスバー[明鏡止水]はprint文だったが、python3では関数になってしまったので、このままでは動かない。
後々困らないように、参考のサイトを見ながら、プログレスバーをちょっと書き換えて引っかからないように書き換えた。と言っても、Python3でテストしてないけど(おぃ

コード

class ProgressBar:
	def __init__(self,totalNum):
		self.totalNum = totalNum
		self.counter = 0
		self.chr = u"*"
		self.width = 40
	def addCounter(self,incrementNum):
		self.counter += incrementNum
	def show(self):
		pbar_chrs = self.chr * (self.width * self.counter / self.totalNum)
		percentage = 100 * self.counter / self.totalNum
		meter = u"\r|{0}{1}| {2}/{3}個 ({4}%)".format(pbar_chrs,u' ' * (self.width - len(pbar_chrs)),self.counter,self.totalNum, percentage)
		sys.stdout.write(meter)
		sys.stdout.flush()
参考
  • コンソール(ターミナル・シェル)上で改行をさせずに文字を表示する方法(タイマーを作ってみた) [hazimarino]
タグ:Python
posted by MINE at 01:06 | Comment(0) | TrackBack(0) | Python | このブログの読者になる | 更新情報をチェックする | edit
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/191630540
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック