Я борюсь с этим для цикла. Я хочу обновить значение вложенного словаря со списком. следующие работы, но я хотел бы использовать для цикла для сжатия кода. "status"
- это вложенный словарь с внешним ключом "A"
и "B"
, а binary_list[]
только со всеми 1.
Trucks = ["A", "B"]
Days= ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday",
"Saturday", "Sunday"]
requests={"A": {"Monday":0, "Tuesday":0, "Wednesday":0, "Thursday":0
"Friday":0, "Saturday":0, "Sunday":0},
"B": {"Monday":0, "Tuesday":0, "Wednesday":0, "Thursday":0,
"Friday":0, "Saturday":0, "Sunday":0}}
binary_list=[1,1,1,1,1,1,1,1,1,1,1,1,1,1]
status["A"]["Monday"]=binary_list[0]
status["A"]["Tuesday"]=binary_list[1]
status["A"]["Wednesday"]=binary_list[2]
status["A"]["Thursday"]=binary_list[3]
status["A"]["Friday"]=binary_list[4]
status["A"]["Saturday"]=binary_list[5]
status["A"]["Sunday"]=binary_list[6]
status["B"]["Monday"]=binary_list[7]
status["B"]["Tuesday"]=binary_list[8]
status["B"]["Wednesday"]=binary_list[9]
status["B"]["Thursday"]=binary_list[10]
status["B"]["Friday"]=binary_list[11]
status["B"]["Saturday"]=binary_list[12]
status["B"]["Sunday"]=binary_list[13]
что я пробовал:
for truck in Trucks:
for day in Days:
requests[truck][day]=[j for j in binary_list]
это даст 14 1 в списке как значение каждого дня. Я понимаю, почему это происходит. это из-за двух циклов for, поэтому я решил, что мне нужны вложенные словарные выражения, чтобы все было в одну строку. Я не уверен, что это правильно, но с моим ограниченным знанием это кажется правильным направлением. мои вопросы, как мне это сделать? Кто-нибудь, пожалуйста, помогите. Еще раз спасибо за ваше время.