#python
Вопрос:
Как вы читаете в названии, я хочу дать массиву определенное имя в базе другой строковой переменной в Python. Я новичок в python, но я уже знаю JS
Вот фрагмент моего кода:
bot = Bot()
chosenusers = bot.read_list_from_file(args.filepath) #enderlxxvii
if not chosenusers:
exit()
else:
print("Found %d users in file." % len(chosenusers))
bot.login(username=args.u, password=args.p, proxy=args.proxy)
bot.follow_users(chosenusers)
for x in chosenusers:
followers = bot.get_user_followers(x) #Array
Я хочу, чтобы массив назывался enderlxxviifollowers или что-то подобное
Надеюсь, вы понимаете, что я имею в виду.
Комментарии:
1. Вы хотите переименовать переменную?
2. @Jonathan1609 да, но я хочу, чтобы это были enderlxxviifollowers или что там есть в txt-файле
3. хорошо, я напишу общий ответ
4. Динамическое изменение имени переменной, безусловно, противоречит шаблону. Не могли бы вы более подробно объяснить, почему, по вашему мнению, вам нужно будет изменить его название? Если вы хотите связать произвольную строку со значением, то вместо этого вы можете использовать a
dict
. Но в чем проблема с наличием только общего имени переменной в этом случае?5. Хорошо, похоже, вам нужен словарь, т. е. сопоставление имени (в вашем случае пользователя) с массивом подписчиков. Словарь на python очень похож на JSON. Вы можете создать его с
followers = { name: bot.get_user_followers(name) for name in chosen_users }
помощью. Это позволит вам использоватьdict
для получения массива всех подписчиков с помощьюfollowers['enderlxxvii']
илиfollowers[username]
гдеusername
находится переменная, содержащая пользователя, от которого вы хотите получить массив.
Ответ №1:
Общий ответ на этот случай таков:
globals()["new_var_name"] = old_var_name
вы можете получить имя new_var_name откуда угодно, предполагая, что это то, что вы ищете.
Комментарии:
1. Хотя это правильный способ изменить имя переменной, я очень сомневаюсь, что это когда-либо будет решением какой-либо распространенной проблемы. Похоже, что спрашивающий скорее должен использовать словарь для сопоставления строки с массивом.
2. @TedKleinBergman да, мне тоже это показалось странным XD