国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python輸出結果刷新及進度條的實現操作

瀏覽:168日期:2022-07-17 15:49:10

print函數

python輸出主要使用print函數,print函數介紹:

print(*objects, sep=’ ’, end=’n’, file=sys.stdout, flush=False)

*objects表示要打印的值,表示多個無名參數或需要打印的值;

sep=’ ’,對應上面要打印的值中間間隔,默認一個空格;

end=’n’,傳入值打印完后的結束符號,默認為換行符,可以自行設置;

file=sys.stdout,設置打印輸出參數,默認打印到終端,也可設置打印保存到文件;

flush=False,是否刷新打印結果。

一行輸出結果并刷新

在一行中顯示輸出結果,每次刷新,其中’r’表示回到當前的開頭,end=’’表示結束符為空,這樣就可以每次更新結果

import timefor i in range(15): time.sleep(0.5) # 這里為了查看輸出變化,實際使用不需要sleep print(’r’, i, end=’’) # print(’r’, 15-i, end=’’) # 從兩位變一位會有問題

上面代碼有個問題,當輸出i從大到小,有位數變化時,結果不正確,可用format格式化輸出,可解決問題:

import timefor i in range(15): time.sleep(0.5) print(’r’, '{:d}'.format(15-i), end=’’)

模型訓練中loss和acc的刷新輸出

我們在訓練機器學習和深度學習模型中,總會隔一段時間輸出損失函數和準確率,每次都直接print輸出,終端會輸出很多信息,這里用單行輸出并刷新的方法來輸出這些信息,我們設置epochs和batch的數量,每次batch輸出刷新,一個epoch完后同時輸出train和test的結果。

import time# 設置epochs和batch的數量epochs = 5n_batch = 15# 這里是測試自己設置的loss和acctrain_loss = 1.2345train_acc = 0.345678test_loss = 1.1234test_acc = 0.235467for i in range(epochs): for j in range(n_batch): time.sleep(0.5) train_loss -= 0.001 train_acc += 0.0001 print('rEpoch: {:d} batch: {:d} loss: {:.4f} acc: {:.4f} | {:.2%}' .format(i+1, j+1, train_loss, train_acc, (j+1)*1.0/n_batch), end=’’) test_loss -= 0.001 test_acc += 0.0001 print('rEpoch: {:d}/{:d} train_loss: {:.4f} test_loss: {:.4f} train_acc: {:.4f} test_acc: {:.4f}' .format(i+1, 5, train_loss, test_loss, train_acc, test_acc), end=’n’)

這里注意,print里'Epoch'前面有一個'r',這個必須要有,同時里面循環end=’’,外面循環end=’n’,最終打印結果如下:

python輸出結果刷新及進度條的實現操作

tqdm顯示進度條

首先安裝tqdm:pip install tqdm

簡單使用,讀取整數,直接在tqdm中傳入一個list, 如果直接給定的是一個整數,可以直接用trange

import timefrom tqdm import tqdm, trangefor i in tqdm(range(100)): time.sleep(0.05) # do something# for i in trange(100):# time.sleep(0.05)# # do something

顯示結果如下,顯示有百分比,以及當前處理到多少個

python輸出結果刷新及進度條的實現操作

tdqm輸入的list可以是字符串,也可以對輸出進度條加一些描述

import timefrom tqdm import tqdmpbar = tqdm(['a', 'b', 'c', 'd', 'e'])for char in pbar: time.sleep(0.8) pbar.set_description('Processing %s' % char) # pbar.set_description('Processing {0}'.format(char))

python輸出結果刷新及進度條的實現操作

以上這篇python輸出結果刷新及進度條的實現操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 句容市| 铁岭县| 灵丘县| 沂南县| 四子王旗| 恭城| 江山市| 镇康县| 舟山市| 宜都市| 若羌县| 平阳县| 资阳市| 厦门市| 祁东县| 溧水县| 思茅市| 和龙市| 嘉峪关市| 新昌县| 蒙阴县| 封丘县| 三门峡市| 邛崃市| 台东县| 丹东市| 高邮市| 商都县| 同江市| 镶黄旗| 驻马店市| 凌海市| 江安县| 双辽市| 弋阳县| 马尔康县| 巢湖市| 孝昌县| 宣城市| 巴彦淖尔市| 会理县|