简单实现python进度条脚本


Posted in Python onDecember 18, 2017

最近需要用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 相关文章推荐
win7安装python生成随机数代码分享
Dec 27 Python
python中的sort方法使用详解
Jul 25 Python
用Python编写简单的微博爬虫
Mar 04 Python
Python+django实现简单的文件上传
Aug 17 Python
基于Python的接口测试框架实例
Nov 04 Python
详解python3实现的web端json通信协议
Dec 29 Python
Python绘制七段数码管实例代码
Dec 20 Python
PyTorch 1.0 正式版已经发布了
Dec 13 Python
Python中sys模块功能与用法实例详解
Feb 26 Python
解决python执行较大excel文件openpyxl慢问题
May 15 Python
Python 按比例获取样本数据或执行任务的实现代码
Dec 03 Python
python 根据列表批量下载网易云音乐的免费音乐
Dec 03 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
Dec 18 #Python
通过Python 获取Android设备信息的轻量级框架
Dec 18 #Python
python中列表和元组的区别
Dec 18 #Python
Django REST为文件属性输出完整URL的方法
Dec 18 #Python
Python3计算三角形的面积代码
Dec 18 #Python
利用python解决mysql视图导入导出依赖的问题
Dec 17 #Python
python 3.5实现检测路由器流量并写入txt的方法实例
Dec 17 #Python
You might like
国内咖啡文化
2021/03/03 咖啡文化
Php部分常见问题总结
2006/10/09 PHP
编写PHP程序检查字符串中的中文字符个数的实例分享
2016/03/17 PHP
[原创]静态页面也可以实现预览 列表不同的显示方式
2006/10/14 Javascript
兼容IE与firefox火狐的回车事件(js与jquery)
2010/10/20 Javascript
Jquery动态进行图片缩略的原理及实现
2013/08/13 Javascript
jQuery实现动画效果的简单实例
2014/01/27 Javascript
原生js获取宽高与jquery获取宽高的方法关系对比
2014/04/04 Javascript
js图片自动轮播代码分享(js图片轮播)
2014/05/06 Javascript
AngularJS实现表单验证
2015/01/28 Javascript
javascript实现通过表格绘制颜色填充矩形的方法
2015/04/21 Javascript
JS+CSS实现简易实用的滑动门菜单效果
2015/09/18 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
JavaScript禁止复制与粘贴的实现代码
2016/05/16 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
简洁实用的BootStrap jQuery手风琴插件
2016/08/31 Javascript
Node.JS中事件轮询(Event Loop)的解析
2017/02/25 Javascript
AngularJS实现页面定时刷新
2017/03/14 Javascript
vue服务端渲染的实例代码
2017/08/28 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
JS实现网页烟花动画效果
2020/03/10 Javascript
Electron 打包问题:electron-builder 下载各种依赖出错(推荐)
2020/07/09 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
[02:53]DOTA2英雄昆卡基础教程
2013/11/25 DOTA
[03:40]2014DOTA2国际邀请赛 B神专访:躲箭真的很难
2014/07/13 DOTA
Python解析网页源代码中的115网盘链接实例
2014/09/30 Python
Python中的集合类型知识讲解
2015/08/19 Python
python使用__slots__让你的代码更加节省内存
2018/09/05 Python
HTML5中外部浏览器唤起微信分享功能的代码
2020/09/15 HTML / CSS
数控专业自荐书范文
2014/03/16 职场文书
外国人聘用意向书
2014/04/01 职场文书
校园标语大全
2014/06/19 职场文书
小学优秀学生评语
2014/12/29 职场文书
2019年年中职场激励人心语录30条
2019/08/07 职场文书
如何用JavaScript检测当前浏览器是无头浏览器
2021/04/27 Javascript
AJAX实现省市县三级联动效果
2021/10/16 Javascript