Преобразование пользовательского ввода в имя списка

Вот что я имею до сих пор:

TotalLists=int(input("How many Lists are you making?")) TotalListsBackup=TotalLists Lists=[] while TotalLists>0: ListName=input("What would you like to call List Number "+str(TotalLists)) Lists.append(ListName) TotalLists=TotalLists-1 TotalLists=TotalListsBackup-1 while TotalLists>=0: Lists[TotalLists] #I would like to create actual lists out of the list names at this step but I dont know how... TotalLists=TotalLists-1 TotalLists=TotalListsBackup-1 print("Here are your Lists: ") while TotalLists>=0: print(Lists[TotalLists]) TotalLists=TotalLists-1 

Я хочу иметь возможность:

  • создать список из имен списка
  • Код, чтобы иметь возможность создавать столько списков, сколько пользователь хочет без кепки

Например, я хочу ввести: Grocery, Код создаст список Called Grocery


Решения, о которых я подумал:

  • Массивы? (Я никогда не использовал их, я очень новичок в программировании на Python, и я не слишком много знаю)

  • Списки списков? (Не знаю, как это сделать. Посмотрел, но не получил прямого ответа)

  • Использование переменных, Создание списка с именем типа:

     List1[] 

и имеют переменную, называемую:

  List1Name=input("What would you like to call list 1?") 

Однако я не знаю, как создать бесконечное количество списков, используя этот способ.

Если у вас есть какие-либо вопросы, пожалуйста, спросите, потому что я знаю, что я не очень хорошо объясняю.

2 Solutions collect form web for “Преобразование пользовательского ввода в имя списка”

Интересно, что вы отметили вопрос «словарь», но не упомянули об этом в своем сообщении. Кто-нибудь сказал вам использовать словарь? Это именно то, что вы должны делать, как это (предположим, что TotalLists уже определен):

 d = {} for _ in range(TotalLists): # The same loop you have now ListName = input("whatever...") d[ListName] = [] 

В конце этого слова у вас есть словарь d, содержащий ключи, которые являются именами, введенными пользователем, и значениями, которые являются пустыми списками. Количество словарных статей – TotalLists. Я игнорирую возможность того, что пользователь будет вводить одно и то же имя дважды.

Вы решаете проблему XY. Нет необходимости запрашивать количество list заранее. Я бы рекомендовал использовать словарь:

 >>> lists = {} >>> while 1: ... newlist = input("Name of new list (leave blank to stop)? ") ... if newlist: ... lists[newlist] = [] ... while 1: ... newitem = input("Next item? ") ... if newitem: ... lists[newlist].append(newitem) ... else: ... break ... else: ... break ... Name of new list (leave blank to stop)? groceries Next item? apples Next item? bananas Next item? Name of new list (leave blank to stop)? books Next item? the bible Next item? harry potter Next item? Name of new list (leave blank to stop)? >>> lists {'groceries': ['apples', 'bananas'], 'books': ['the bible', 'harry potter']} 
  • Python - Строка в список
  • Сканирование кадра чтения Python
  • Python, декорирующий свойство setter со списком
  • У python есть отсортированный список?
  • Список не отображается во время сортировки
  • Разбить список на вложенные списки по значению
  • Операция с списком Python
  • преобразование списка целых чисел в диапазон в python
  • Как я могу сделать следующее сравнение без необходимости писать 20 if-statements или составлять 20 списков / словарей?
  • Функции sort () и reverse () не работают
  • Python List Consrehension Vs. карта
  •  
    Interesting Posts for Van-Lav

    Вызов функции верхнего уровня по имени в Python

    Печать нулевого символа («\ x00») в Python vs C

    Многократно используемая библиотека для получения доступной для пользователя версии размера файла?

    Сумма вдоль оси в массиве numpy

    Оптимизация кода Python

    перетасовка / перестановка DataFrame в пандах

    метод обновления словаря python

    pip install: проверьте разрешения и владельца этого каталога

    Создание графического интерфейса с Python в Linux

    Запрос с поисковым вызовом по курсору вызывает ошибку из-за ограничений для «IN filter» в методе cursor () … Какая должна быть альтернатива?

    Значение 0x и \ x в шестнадцатеричных строках python?

    почему установка начальной среды с использованием env останавливает запуск моего сценария Python на Ubuntu?

    Есть ли визуальный профилировщик для Python?

    KeyError при индексировании кадра данных Pandas

    Как я могу создать приложение Java с помощью API Monkeyrunner?

    Python - лучший язык программирования в мире.