Я пытаюсь загрузить простой текстовый файл с массивом чисел в Python.MWE имеет значение
import numpy as np
BASE_FOLDER = 'C:\\path\\'
BASE_NAME = 'DATA.txt'
fname = BASE_FOLDER + BASE_NAME
data = np.loadtxt(fname)
Однако при запуске возникает ошибка:
OSError: C:\path\DATA.txt not found.
Я использую VSCode, поэтому в окне отладки ссылка на путь щелкается.И, конечно, если я щелкну по нему, файл откроется нормально, поэтому это говорит о том, что путь правильный.
Кроме того, если я сделаю print(fname)
, VSCode также даст мне правильный путь.
Есть ли что-то, что я пропускаю?
РЕДАКТИРОВАТЬ
Согласно вашим (очень полезным для дальнейшего использования) комментариям, я изменил свой код, используя модуль os
и rawстроки:
BASE_FOLDER = r'C:\path_to_folder'
BASE_NAME = r'filename_DATA.txt'
fname = os.path.join(BASE_FOLDER, BASE_NAME)
Все еще приводит к ошибке.
Второе редактирование
Я попробовал еще раз с другим файлом.Очень простой путь и имя файла
BASE_FOLDER = r'Z:\Data\Enzo\Waste_Code'
BASE_NAME = r'run3b.txt'
И снова я получаю ту же ошибку.Если я попробую альтернативный подход,
os.chdir(BASE_FOLDER)
a = os.listdir()
, затем выберите правильный файл,
fname = a[1]
Я все еще получаю ошибку при попытке импортировать его.Хотя я извлекаю его прямо из listdir
.
>> os.path.isfile(a[1])
False