#!/usr/bin/env python3 | |
# coding=utf-8 | |
class LoadingBar: | |
def __init__(self, length: int = 40): | |
self.length = length | |
self.symbols = ["β", "β", "β", "β"] | |
def __call__(self, progress: float) -> str: | |
p = int(progress * self.length * 4 + 0.5) | |
d, r = p // 4, p % 4 | |
return "β β" + d * "β" + ((self.symbols[r]) + max(0, self.length - 1 - d) * "β" if p < self.length * 4 else "") + "ββ¨" | |