Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中使用TQM打印单行进度条?_Python_Progress Bar_Tqdm - Fatal编程技术网

如何在Python中使用TQM打印单行进度条?

如何在Python中使用TQM打印单行进度条?,python,progress-bar,tqdm,Python,Progress Bar,Tqdm,通常,在任何TQM示例中,每次新迭代都会打印一个新的进度条,如下所示: Loading : 0%| | 0/6 [00:09<?, ?it/s]WARNING: Truncating EEG Loading : 17%|█▋ | 1/6 [00:39<01:37, 19.54s/it]WARNING: Truncating EEG Loading : 33%|███▎ | 2/6 [00:43<01:18, 19.7

通常,在任何TQM示例中,每次新迭代都会打印一个新的进度条,如下所示:

Loading   :   0%|          | 0/6 [00:09<?, ?it/s]WARNING: Truncating EEG
Loading   :  17%|█▋        | 1/6 [00:39<01:37, 19.54s/it]WARNING: Truncating EEG
Loading   :  33%|███▎      | 2/6 [00:43<01:18, 19.74s/it]WARNING: Truncating EEG
Loading   :  50%|█████     | 3/6 [05:58<00:45, 15.19s/it]WARNING: Truncating EEG
Loading   :  67%|██████▋   | 4/6 [06:04<03:30, 105.31s/it]WARNING: Truncating EEG
Filtering :  83%|████████▎ | 5/6 [06:09<01:15, 75.37s/it]
from tqdm import trange
from multiprocessing import Pool

class TqdmHow:
    def __init__(self):
        self.tqdmloop = False
        self.eeg_files = list(range(1, 17))

    def load(self, verbose=1):
        self.verbose = verbose
        # load EEG and adapt Hypno files
        self.tqdmloop = trange(len(self.eeg_files), desc='Loading data')
        # with Pool(3) as p:
        for i in self.tqdmloop:
            self.load_eeg_hypno(self.eeg_files[i])
            self._print('WARNING: Truncating EEG')
        self.tqdmloop = False

    def _progress(self, description):
        self.tqdmloop.set_description(description + ' ' * (10 - len(description)))
        self.tqdmloop.refresh()

    def load_eeg_hypno(self, eeg_file):
        x = eeg_file
        self._progress('Loading')
        self._progress('Filtering')
        self._progress('other procedure')

    def _print(self, statement):
        if 'WARNING' in statement and self.verbose == 0: return
        if self.tqdmloop:
            self.tqdmloop.write(str(statement))
            self.tqdmloop.refresh()
        else:
            print(statement)

Tqdm_how = TqdmHow()
Tqdm_how.load(verbose=1)