Как удалить элемент из списка, если пользовательский ввод находится в списке? - PullRequest
0 голосов
/ 09 июля 2020

Если у меня есть список вроде этого:

colourlist = [a,b,c,d]

и есть пользовательский ввод для ввода любых букв:

userinput = input("Enter a letter: ")

можно ли сделать так, чтобы, если пользователь вводит буква «а», как мне сделать так, чтобы она автоматически удалялась из списка, чтобы список стал:

colourlist = [b,c,d]

Изменить: я хочу, чтобы он автоматически удалил ее из списка, а не если a == a, colourlist.remove [a], я хочу, чтобы он был как в списке цветов, тогда он удалит этот элемент из списка

Ответы [ 2 ]

0 голосов
/ 09 июля 2020

Используйте remove с блоком try-except. Это вызовет ошибку, если ввод отсутствует в списке.

x= list('abcd')
u_in = input()
try:
  x.remove(u_in)
except:
  None
0 голосов
/ 09 июля 2020

Вы можете сохранить введенные пользователем данные в переменную, а затем remove() это значение.

userinput = input("Enter a letter: ")
colourlist.remove(userinput)

В качестве альтернативы вы можете сделать:

try:
    colourlist.remove(input("Enter a letter: "))
except ValueError:
    print('Input not in list')

Это попытается удалить ввод из списка, и если его нет в списке, он говорит Input not in list.

...