Замена определенных элементов в списке python

Dinner = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronMonday = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronTuesday = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronWednesday = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronThursday = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronFriday = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronSaturday = ['Meat', 'Veg', 'Milk', 'Grains']
DinneronSunday = ['Meat', 'Veg', 'Milk', 'Grains']

Мне нужна помощь с перезаписью элементов в списке, я знаю, как их перезаписать, но я не знаю, как перезаписать их, используя пользовательский ввод, например, для ужина в понедельник, я хочу изменить все категории


person Community    schedule 01.10.2015    source источник
comment
Так что в значительной степени то, что я сделал, я хочу сделать это с помощью пользовательского ввода   -  person    schedule 01.10.2015
comment
Я бы рекомендовал немного больше структурировать этот код, используя тип данных, представляющий еду. Тогда вам будет удобнее выполнять операции с этим типом данных.   -  person shuttle87    schedule 01.10.2015
comment
@shuttle87 что ты имеешь в виду   -  person    schedule 01.10.2015
comment
Может быть, словарь с ключами в виде дней недели и значениями в виде списков еды.   -  person Heman Gandhi    schedule 01.10.2015
comment
@ Let'sgothebeastboy В частности, я бы создал класс, представляющий еду, затем выполнял бы над ним операции, и я бы реализовал __str__ для этого класса, чтобы помочь в его печати. Другой возможностью был бы словарь, если вам не нужно так много структуры.   -  person shuttle87    schedule 01.10.2015
comment
@shuttle87 мне нужно использовать список, потому что это задание о списке   -  person    schedule 01.10.2015


Ответы (2)


Вы можете использовать метод ввода python, чтобы установить параметры для каждого дня. Например:

monday0 = input("Enter option 1 for Monday: ")
DinneronMonday[0] = monday0

// Add input for each

Вы также можете сохранить ввод в какой-либо другой структуре коллекции и соответствующим образом установить параметры дней. Это задание для пользователя ;)

Редактировать:

Вы можете прочитать значения в списке, предполагая, что ваш ввод разделен запятыми

// Input should look like - Steak,Chicken,Fish,Tacos  
options = input("Enter options for Monday: ")
DinneronMonday = list(options.split(','))

// Do the same for each day
person MGM_Squared    schedule 01.10.2015
comment
Майкл Гэри, я должен делать 4 входа каждый день. - person ; 01.10.2015
comment
@ Let'sgothebeastboy, создайте функцию, которая делает это, а затем передайте день в качестве параметра. - person shuttle87; 01.10.2015
comment
@shuttle87 я не знаю как это сделать пожалуйста помогите мне - person ; 01.10.2015
comment
@MichaelGary, как сохранить ввод в другой структуре коллекции, о которой вы говорите - person ; 01.10.2015
comment
Я бы порекомендовал превратить мой вышеприведенный ответ в метод, который вы называете pass in the day в качестве параметра, упомянутого ранее @shuttle87. - person MGM_Squared; 01.10.2015
comment
@ Let'sgothebeastboy Думаю, я не понимаю задание. Каков ожидаемый результат? - person MGM_Squared; 01.10.2015

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

    newItem = input("New menu item: ")
    DinneronMonday = [newItem for oldItem in DinneronMonday]
person Bendik    schedule 01.10.2015
comment
Забыл, что raw_input называется вводом в Python 3. Отредактированный ответ. - person Bendik; 01.10.2015