Этот вопрос немного стар, но для тех, у кого такая же проблема:
Вы правы, вы не можете открыть переменную jsonFile. Это указатель на другой файл подключения и открытия хочет строку или что-то подобное. Стоит отметить, что jsonFile также должен быть закрыт после выхода из блока «with», поэтому на него нельзя ссылаться за пределами этого.
Чтобы ответить на вопрос, хотя:
with open(jsonFile, 'w') as jsonFIle:
json.dump(json_decoded,jsonFile)
должно быть
with open(string_filename, 'w') as jsonFIle:
json.dump(json_decoded,jsonFile)
Вы можете видеть, что нам просто нужно использовать ту же строку, чтобы открыть новое соединение, а затем мы можем присвоить ему тот же псевдоним, который мы использовали для чтения файла, если захотим. Лично я предпочитаю, чтобы in_file и out_file были явными о моих намерениях.