Python-简单打印进度条

 1 import sys,time
 2 
 3 for i in range(20):
 4     sys.stdout.write("#")
 5     sys.stdout.flush()
 6     time.sleep(0.1)
 7 
 8 #sys.stdout.write ,表示写到标准输出(屏幕)
 9    sys.stdout.flush ,表示每写一个字符就立刻把内存缓冲区的内容刷出来
10    time模块--time.sleep, 表示休眠时间

 

    def progress_bar(self, ret_size, total_size):
        '''
        显示进度条
        ret_size: 已经传输的数据大小
        total_size: 文件的总大小
        '''
        percent_num = int(float(ret_size) / float(total_size) * 100)
        chr_num = int(percent_num / 2) * '*'
        if percent_num == 100:
            per_str = '\r{0}M/{1}M {2}% : {3}\n'.format(int(ret_size / 1048576),
                                                        int(total_size / 1048576),
                                                        percent_num,
                                                        chr_num)
        else:
            per_str = '\r{0}M/{1}M {2}% : {3}'.format(int(ret_size / 1048576),
                                                      int(total_size / 1048576),
                                                      percent_num,
                                                      chr_num)
        print(per_str, end='', flush=True)

 

posted @ 2018-07-26 21:53  下山打老虎i  阅读(458)  评论(0编辑  收藏  举报