我在一些代码中遇到了令人困惑的问题,我目前正在Jupyter笔记本中运行。我正在阅读几千个文本文件,每个文件都有几十MB,有Pandas,并在其中搜索某些值。为了在发生这种情况时跟踪进度,我每隔一段时间就会抛出一些打印语句。这里代码的重要部分是:
read_dir = '/Volumes/Data/'
all_text_files = os.listdir(read_dir)
all_text_files.sort()
# Split the file up so we at least get some output if this doesn't finish running
file_chunks = [all_text_files[i:i+100] for i in range(0,len(all_text_files),100)]
for chunk_num, current_chunk in enumerate(file_chunks):
print('Chunk', chunk_num)
for file_num, file in enumerate(current_chunk):
if file_num % 10 == 0:
print('File', file_num, '-', file)
# Read in the data down here
通常情况下,我会看到一堆类似
的打印语句File 10 - some_file.txt
但是,我最近看到其中一个打印声明在中途停止。也就是说,Jupyter输出位于File 10 -
几分钟,然后最终完成到上面一行,代码继续运行。
知道它是如何卡在这样的打印声明中间的吗?这可能是在Python print
函数中停止,还是在Jupyter笔记本上显示输出?最后,有没有任何信息可以解决这个问题 - 我自己的代码中有什么可能导致这个吗?