довольно новый для Python.У меня есть несколько пользовательских функций в моем скрипте Python, однако одна из них, которую я использую для импорта файлов, не совсем работает, и я получаю сообщение об ошибке.
NameError - имя 'имя файла' не определено '
Функция работает следующим образом:
def importdata(path,temp_file_name,dataset_name):
temp_file_name = os.path.join('..', 'data', path)
dataset_name = pd.read_csv(temp_file_name, index_col='time')
var1, var2, var3, var4 = dataset_name.keys()
Когда я пытаюсь вызвать его, используя
importdata('File.csv',filename,datasetname)
, я получаю NameError в «filename».
Я пытался определить его в другом месте, глобально, используя класс, используя «имя файла» и т. Д., Но безрезультатно.Эта проблема, кажется, часто встречается, но ни одно из решений, которые я могу найти, кажется, не работает для меня.Возможно ли иметь такую функцию для предоставленного кода, и если да, то как я могу заставить ее работать?
РЕДАКТИРОВАТЬ: Это работало, когда я не использовал пользовательскую функцию, но только
filename = os.path.join('..', 'data', 'File.csv')
datasetname = pd.read_csv(filename, index_col='time')
var1, var2, var3, var4 = datasetname.keys()
EDIT2: мне удалось заставить его работать сейчас, благодаря советам ниже.Рабочий код теперь выглядит следующим образом:
def importdata(*paths):
for index, path in enumerate(paths):
temp_file_name = os.path.join('..', 'data', path)
data[index] = pd.read_csv(temp_file_name, index_col=' Time_Created')
data[index].index = pd.to_datetime(data[index].index, unit='ms')
global var1, var2, var3, var4
var1, var2, var3, var4 = data[index].keys()