progress.py

来自「finite element library for mathematic ma」· Python 代码 · 共 43 行

PY
43
字号
__author__ = "Anders Logg (logg@simula.no)"__date__ = "2005-03-24 -- 2007-02-27"__copyright__ = "Copyright (C) 2005-2007 Anders Logg"__license__  = "GNU GPL version 3 or any later version"# Python modulesimport sys# FFC common modulesfrom debug import *# FIXME: Get from width of terminal windowwidth = 80class Progress:    "A simple text-mode progress bar"    def __init__(self, n):        "Create progress bar for process consisting of n steps."        self.n = n        self.i = 0        self.pos = 0        return    def __iadd__(self, other):        "Add increment to progress bar."                self.i += other        newpos = int(float(self.i) / float(self.n) * float(width))        if newpos > width:            return self        if getlevel() < 0:            return self        if newpos > self.pos:            sys.stdout.write("".join(["." for j in range(newpos - self.pos)]))            sys.stdout.flush()            self.pos = newpos        if newpos == width:            sys.stdout.write("\n")            sys.stdout.flush();        return self

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?