def __init__(self, tasks): self.tasks = tasks widgets = [ widget.Bar(bar='*', tip='>'), widget.Percentage(), widget.Num(), widget.ElapsedSeconds(), widget.FinishedAt() ] self.pb = ProgressBar(len(self.tasks), widgets=widgets)
def test_widget(): print('test_widget (iteration)') widgets = [ widget.Bar(under=' ', tip='─', bar='─', before='├', after='┤'), widget.Percentage(), widget.Num() ] format_str = '{} {} ({})' ProgressBar.iteration(range(100), lambda item: sleep(0.01), widgets=widgets, format_str=format_str)
def data_load(): folder = ['ayame', 'fubuki', 'subaru'] # 使用する画像のそれぞれのフォルダ default_dir = r'D:\SystemFiles\pictures\cnn' # 上のフォルダの親ディレクトリ x_train = [] y_train = [] x_test = [] y_test = [] print("学習データ読み込み") with ProgressBar(2100) as progress_bar: for index, name in enumerate(folder): dir_name = default_dir + "/train/" + name files = glob.glob(dir_name + "/*.png") for i, file in enumerate(files): img = cv2.imread(file) r_img = cv2.resize(img, size) x_train.append(r_img) y_train.append(index) progress_bar.forward() print("テストデータ読み込み") with ProgressBar(900) as progress_bar: for index, name in enumerate(folder): dir_name = default_dir + "/test/" + name files = glob.glob(dir_name + "/*.png") for i, file in enumerate(files): img = cv2.imread(file) r_img = cv2.resize(img, size) x_test.append(r_img) y_test.append(index) progress_bar.forward() x_train = np.array(x_train, dtype='float32') x_train /= 255 x_test = np.array(x_test, dtype='float32') x_test /= 255 y_train = np.array(y_train) y_test = np.array(y_test) # One-hotベクトルに変換 y_train = to_categorical(y_train) y_test = to_categorical(y_test) # 学習用データとテストデータ # x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.30) return x_train, y_train, x_test, y_test, len(folder)
def test_default(): print('test_default') with ProgressBar(100) as progress_bar: for item in range(100): sleep(0.01) progress_bar.forward() assert progress_bar.progress == 1.0
class TaskManager(object): def __init__(self, tasks): self.tasks = tasks widgets = [ widget.Bar(bar='*', tip='>'), widget.Percentage(), widget.Num(), widget.ElapsedSeconds(), widget.FinishedAt() ] self.pb = ProgressBar(len(self.tasks), widgets=widgets) def start(self): self.pb.start() self.execute() def pop(self): if len(self.tasks) == 0: return task = self.tasks.pop() self.pb.forward() return task def execute(self): t = self.pop() if not t: return t.execute() if len(self.tasks) > 0: self.execute() else: self.pb.finish()
def test_error(): print('test_error') try: with ProgressBar(100) as progress_bar: for item in range(100): sleep(0.01) if item >= 70: raise Exception('test error') progress_bar.forward() except Exception as e: pass assert progress_bar.progress == 0.7
class TaskManager(object): def __init__(self, tasks, no_threads=10): self.tasks = tasks self.no_threads = no_threads widgets = [ widget.Bar(bar='*', tip='>'), widget.Percentage(), widget.Num(), widget.ElapsedSeconds(), widget.FinishedAt() ] self.pb = ProgressBar(len(self.tasks), widgets=widgets) def start(self): self.pb.start() for i in range(0, self.no_threads): self.thread_start() def pop(self): if len(self.tasks) == 0: return task = self.tasks.pop() self.pb.forward() if len(self.tasks) == 0: self.pb.finish() return task def thread_start(self): if len(self.tasks) > 0: thread = threading.Thread(target=self.execute) thread.start() def execute(self): t = self.pop() if not t: return t.execute() self.thread_start()
def test_generation(): print('test_generataion') for item in ProgressBar.generation(range(100)): sleep(0.01)
def test_iteration(): print('test_iteration') ProgressBar.iteration(range(100), lambda item: sleep(0.01))
floors = [] rent = [] admin = [] others = [] floor_plans = [] areas = [] detail_urls = [] # In[10]: for url in urls: soup = BeautifulSoup(requests.get(url).content) summary = soup.find("div", {"id": "js-bukkenList"}) apartments = summary.find_all("div", {"class": "cassetteitem"}) url_progress = ProgressBar(len(urls)) apartment_progress = ProgressBar(len(apartments)) url_progress.start() apartment_progress.start() for apartment in apartments: room_number = len(apartment.find_all("tbody")) name = apartment.find('div', class_='cassetteitem_content-title').text address = apartment.find("li", class_="cassetteitem_detail-col1").text for i in range(room_number): names.append(name) addresses.append(address) sublocation = apartment.find("li", class_="cassetteitem_detail-col2") cols = sublocation.find_all("div")
from __future__ import print_function import time import datetime import grove_2smpb_02e from light_progress.commandline import ProgressBar from light_progress import widget Pground = 1010.3 P0 = 1013.25 pow = 1.0 / 5.256 sensor = grove_2smpb_02e.Grove2smpd02e() widgets = ['..HP..', widget.Num(), widget.Bar()] hitpoint = ProgressBar(100, widgets=widgets) def cal_height(): press, temp = sensor.readData() height = ((P0 / press)**pow - (P0 / Pground)**pow) * (temp + 273.15) / 0.0065 return height def cal_damage(height): if height < 9: damage = 0 elif height < 10: damage = 12