Как создать списки из списка строк?

У меня есть список строк, таких как:

names = ['apple','orange','banana'] 

И я хотел бы создать список для каждого элемента в списке, который будет называться точно так же, как строка:

 apple = [] orange = [] banana = [] 

Как я могу это сделать в Python?

2 Solutions collect form web for “Как создать списки из списка строк?”

Вы сделали бы это, создав dict :

 fruits = {k:[] for k in names} 

Затем обращайтесь к каждому из них (например: 🙂 fruits['apple'] – вы не хотите идти по пути отдельных переменных!

Всегда используйте ответ Джона Клемента .


globals() возвращает словарь, поддерживающий глобальное пространство имен, после чего вы можете рассматривать его как любой другой словарь. Вы не должны этого делать. Это приводит к загрязнению пространства имен, может переопределять существующие переменные и затрудняет отладку проблем, возникающих в результате этого.

 for name in names: globals().setdefault(name, []) apple.append('red') print(apple) # prints ['red'] 

Вы должны были заранее знать, что список содержит «яблоко», чтобы позже ссылаться на переменную «яблоко», после чего вы могли бы определить эту переменную как обычно. Поэтому на практике это не полезно. Учитывая, что ответ Джона также дает словарь, нет никакого смысла использовать globals .

  • Как подсчитать статьи и поместить их в список
  • Как получить имя модуля определения класса объекта, а не имя модуля для объекта Instantiation?
  • Загрузите и проанализируйте CSV-файл с помощью Google App Engine
  • Генератор случайных спортивных событий Python
  • Является ли os.listdir () детерминированным?
  • как вы видите всю историю команд в интерактивном python?
  • Python Итерация через список списка, чтобы создать новый список в последовательности индексов
  • Как использовать несколько строковых аргументов в Python
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.