简单实现python进度条脚本

最近需要用Python写一个小脚本,用到了一些小知识,赶紧抽空记录一下。不深但是常用。

两个进度条示例,拷贝就能运行:

# coding=utf-8

import sys

import time

# width:宽度, percent:百分比

def progress(width, percent):

print "\r%s %d%%" % (('%%-%ds' % width) % (width * percent / 100 * '='), percent),

if percent >= 100:

print

sys.stdout.flush()

# 示例一、0%--100%

def demo1():

for i in xrange(100):

progress(50, (i + 1))

time.sleep(0.1)

## 示例二、周期加载

def demo2():

i = 19

n = 200

while n > 0:

print "\t\t\t%s \r" % (i * "="),

i = (i + 1) % 20

time.sleep(0.1)

n -= 1

demo1()

demo2()

提供一个自己写的一个简单异步进度条,可以在耗时操作前开启,然后再耗时操作结束后停止。

import time

import thread

import sys

class Progress:

def __init__(self):

self._flag = False

def timer(self):

i = 19

while self._flag:

print "\t\t\t%s \r" % (i * "="),

sys.stdout.flush()

i = (i + 1) % 20

time.sleep(0.05)

print "\t\t\t%s\n" % (19 * "="),

thread.exit_thread()

def start(self):

self._flag = True

thread.start_new_thread(self.timer, ())

def stop(self):

self._flag = False

time.sleep(1)

用法:

progress = Progress()

progress.start()

time.sleep(5)

progress.stop()

以上是 简单实现python进度条脚本 的全部内容, 来源链接: utcz.com/z/348296.html

回到顶部