Pytorch dataloader加for循环,不加终止条件会无限循环吗?

使用for循环使用dataloader生成训练数据,如果for循环中不加入终止条件,最终会生成多少个batch呢?

train_data = DataLoader(train_set, batch_size = 64, shuffle = True) # 这里的train_set没什么特殊的
for i, (im, label) in enumerate(train_data):
    print(label)
    print(i) # 

针对一个给定的train_set,我用这段代码跑,没有加终止条件,那么理论上会无限循环吗?在实际运行中会在某次循环中停止,原因是什么呢?
初学者的问题可能比较低级,希望各位见谅!

enumerate(train_data)
这个就是终止条件的。

for 循环是遍历循环对象,当遍历完了后自然终止。不是while循环需要设置终止条件。