python - 从目录中检索一部分文件的奇怪问题:python中没有这样的文件或目录错误
问题描述
我知道这可能是一个重复的问题,但它有一个我无法找到的特殊点。
我正在尝试从我的 python 应用程序的目录中检索文件。下面的函数根据testOrTrain
变量检索一定比例的文件。这是我的代码:
def get_files_in_dir(directory,trainOrTest):
file_names_list = []
for file_name in glob.glob(directory):
file_names_list += [file_name]
#1 for train_data and 0 for test_data
if trainOrTest == 1:
proportion = len(os.listdir(directory))*65/100
return file_names_list[:int(proportion)]
elif trainOrTest == 0:
proportion = len(os.listdir(directory))*35/100
return file_names_list[int(proportion):]
# return file_names_list
这是我使用它的功能:
def training_data():
for i in range(1,2):
p = 'C'+'%.2d' % i
file_path = os.path.join('ohsumed-all',str(p),'*')
for file in get_files_in_dir(file_path,1):
file_data = get_text_file_data(file)
print(file_data)
这段代码给了我错误“没有这样的文件或目录”。这段代码的奇怪之处在于,当我删除if
部分并只是简单地返回 files_names_list(注释中的代码部分)时,它工作正常。
有人知道这里发生了什么吗?
顺便说一句,我正在研究 wsl(ubuntu)