97
70

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ちょっとかしこいtqdm①

Last updated at Posted at 2018-10-16

続編→ https://qiita.com/namahoge/items/c390e79693605234212b

tqdm

https://github.com/tqdm/tqdm
tqdm.gif

ggってもシンプルな使い方しか出てこなかったので記事を書いてみました

普通のtqdm

from tqdm import tqdm
import time

def func(c):
    # データの読み書きなど、何らかの処理を行う
    # 今回はとりあえず何もしない関数を用意した。
    pass

for char in tqdm(list("abcdefg")):
    func(char)
    time.sleep(0.01)

Screenshot from 2019-01-04 16-47-41.png

  • 進捗バーがでてきただけでなんかすげえってなった思ひ出

事故ったtqdm

from tqdm import tqdm
import time

def func(c):
    # とりあえず入力文字をそのまま返してみようと思った。
    return c

for char in tqdm(list("abcdefg")):
    print(func(char))
    time.sleep(0.01)

Screenshot from 2019-01-04 16-50-31.png

  • あるある
  • 変数とかも進捗バーに一緒に表示してくりーー(kerasみたいに)

理解したtqdm

from tqdm import tqdm
import time

def func(c):
    # とりあえず入力文字をそのまま返してみようと思った。
    return c

with tqdm(list("abcdefg")) as pbar:
    for char in pbar:
        pbar.set_postfix(input=char, output=func(char))
        time.sleep(0.01)

Screenshot from 2019-01-04 16-52-07.png

  • そういうこと
  • with文を使って、このループ内で使うtqdmを操作できるようにする的な

完全に理解したtqdm

from tqdm import tqdm
import time
from collections import OrderedDict
from random import random

def func(c):
    # とりあえず入力文字をそのまま返してみようと思った。
    return c

with tqdm(list("abcdefg"), ncols=10) as pbar:
    for i, char in enumerate(pbar):
        pbar.set_postfix(OrderedDict(
            output=func(char), loss=random(), acc=random()))
        time.sleep(0.01)

Screenshot from 2019-01-04 16-53-08.png

  • おーーkerasっぽくなった
  • set_postfixに渡しているのは辞書なので、表示させる変数の順番が変わってほしくなかったらこうすると良さそう
    • (そのまま渡すと名前順的にaccが最初、stepが最後に来てしまう...)
  • ついでに黒いバーも短くしてみた
  • 完全に理解した(嘘ですもっといい書き方あったら教えて)

以上!!

こちらも興味あれば見てってください〜

twitterもよろしく)

\def\textlarge#1{%
  {\rm\Large #1}
}
\def\textsmall#1{%
  {\rm\scriptsize #1}
}

  $\textsmall{い\ い\ ね\ ほ\ し\ い\ !}$

97
70
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
97
70

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?