关于#tqdm#的问题,如何解决?(标签-ar|关键词-for)

#代码中train_pbar.set_description(f'Epoch [{epoch + 1}/{n_epochs}]')括号内的东西不理解 有没有人给解答一下 整体代码如下
#train_pbar = tqdm(train_loader, position=0, leave=True)
for x, y in train_pbar:
optimizer.zero_grad() # Set gradient to zero.
pred = model(x)
loss = criterion(pred, y)
loss.backward() # Compute gradient(backpropagation).
optimizer.step() # Update parameters.
step += 1
loss_record.append(loss.detach().item())

        # Display current epoch number and loss on tqdm progress bar.
        train_pbar.set_description(f'Epoch [{epoch + 1}/{n_epochs}]')
        train_pbar.set_postfix({'loss': loss.detach().item()})
train_pbar.set_description(f'Epoch [{epoch + 1}/{n_epochs}]')

就是给 tqdm 那个进度条的最左边的提示信息改为 Epoch 1/5 类似这种形式。

这个 f-string 是 python3.6 后开始引入的特性,见 https://peps.python.org/pep-0498/,简单说就是一种把变量值放进字符串里的语法糖。

s = "Hello"
# 以下两句等价
print(f"{s} World!")
print(s + " World!")