Вопрос-Ответ

Convert string to variable name in python [duplicate]

Преобразовать строку в имя переменной в python

У меня есть любая строка. например, 'buffalo',

x='buffalo'

Я хочу преобразовать эту строку в имя некоторой переменной, например,

buffalo=4 

не только в этом примере, я хочу преобразовать любую входную строку в имя некоторой переменной. Как я должен это сделать (в python)?

Переведено автоматически
Ответ 1
x='buffalo'    
exec("%s = %d" % (x,2))

После этого вы можете проверить это с помощью:

print buffalo

В качестве выходных данных вы увидите:
2

Ответ 2

Это лучший известный мне способ создания динамических переменных в python.

my_dict = {}
x = "Buffalo"
my_dict[x] = 4

Я нашел похожий, но не тот же вопрос здесь
Создание переменных с динамическими именами на основе пользовательского ввода

Ответ 3

Вы можете использовать словарь для отслеживания ключей и значений.

...

dictOfStuff = {} ##Make a Dictionary

x = "Buffalo" ##OR it can equal the input of something, up to you.

dictOfStuff[x] = 4 ##Get the dict spot that has the same key ("name") as what X is equal to. In this case "Buffalo". and set it to 4. Or you can set it to what ever you like

print(dictOfStuff[x]) ##print out the value of the spot in the dict that same key ("name") as the dictionary.

Словарь очень похож на реальный словарь. У вас есть слово и у вас есть определение. Вы можете посмотреть слово и получить определение. Итак, в этом случае у вас есть слово "Buffalo", и его определение равно 4. Оно может работать с любым другим словом и определением. Просто убедитесь, что вы сначала поместили их в словарь.

python python-2.7