Моя цель: Цель, которую я создаю, состоит в том, чтобы пользователь вводил имя элемента. Затем python считывает во внешний файл, который находит значение, которому назначен запрашиваемый элемент, и, наконец, значение распечатывается.Импорт текстовых файлов с переменными в python
Например -
>>> helium
2
Проблема заключается в том, я не знаю, как получить питона interpretate в текстовый файл, который выглядит, как этот
hydrogen = 1
helium = 2
lithium = 3
как код. Поэтому, когда я ввожу печать (литий), я получаю сообщение об ошибке.
Моя просьба: Может ли кто-нибудь показать мне, как я могу довести это до такой степени, что могу прочесть ценности и распечатать их. Мне не нужна помощь с пользовательским вводом и все такое.
Заранее спасибо.
UPDATE
Я использовал этот код:
import json
file = open("noble_gases.json","r")
elements = json.loads(file.read())
noble_gases.json выглядит следующим образом:
"helium" : 2,
"neon" : 10,
"argon" : 18,
"krypton" : 36,
"xenon" : 54,
"radon" : 86,
И теперь я получаю эту ошибку:
Traceback (most recent call last):
File "C:\Python34\Programs\Python Mini Project\finder.py", line 3, in <module>
elements = json.loads(file.read())
File "C:\Python34\lib\json\__init__.py", line 318, in loads
return _default_decoder.decode(s)
File "C:\Python34\lib\json\decoder.py", line 346, in decode
raise ValueError(errmsg("Extra data", s, end, len(s)))
ValueError: Extra data: line 1 column 10 - line 7 column 1 (char 9 - 85)
Спасибо всем, кто был контрабандным. Меня поражает скорость ответов.
UPDATE:
Удаление окончательного запятые в файле JSon сделал трюк. Спасибо всем, кто помог. Я не могу отказаться от оценок, так как я не уровень 15. Итак, я дал вам благодарственное сообщение.
Если вы хотите достичь именно то, что вы просили (хотя все это выглядит немного странно для меня, и я бы предложите использовать некоторые из приведенных ниже ответов), вы можете назвать свой файл 'elements.py' и сделать' из импорта элементов * ' – LondonRob
В ответ на ваше обновление: вам нужно включить открывающие и закрывающие фигурные скобки в файле JSON. Попробуйте сделать первую строку '{« гелий »: 2,' и последнюю строку «Радон»: 86,} '. – Cyphase