Как сделать переменную в имени которой будет число введенное пользователем с клавиатуры
Допустим у меня есть цикл
for i in range (0, 4):
...
и я хочу что бы у меня образовалось несколько переменных player_, в данном случае player_0, player_1 и тд. Подскажите, пожалуйста, как это сделать.
Ответы (2 шт):
Автор решения: Max
→ Ссылка
Да, так можно сделать с помощью функции exec() и f-string но к этой переменной вы не сможете непосредственно обратиться.
Выглядит это так:
for i in range(4):
exec(f'player_{i}={some_value}')
Но я крайне не рекомендую так делать! Пустая трата времени, сам через такое проходил, знаю.
Вот лучший способ:
создаем dict-comprenshion
players = {f'player_{i}': some_value for i in range(4)}
получаем значение игрока
player = players.get('palayer_1')
Автор решения: Salavat
→ Ссылка
Можно воспользоваться locals()
for i in range(5):
locals()[f"player_{i}"] = i
print(player_1)