У меня есть целая куча данных, и есть два списка, состоящие из даты и времени, которые выглядят так:преобразование дата и время со списком пониманием
даты: год-месяц-день
раз: час : минута: секунда
так я их аппарт и поместить каждый в отдельный список:
year,month,day = [i.split("-")[0] for i in date], [i.split("-")[1] for i in date], [i.split("-")[2] for i in date]
hour,minute,second = [i.split(":")[0] for i in time], [i.split(":")[1] for i in time], [i.split(":")[2] for i in time]
теперь, так как каждый из них длинные списки той же длины, я хочу, чтобы преобразовать их в один список, который содержит их как datetime
объектов. Таким образом, я использовал другой список понимание этого:
datetime_column = [datetime.datetime(int(y),int(m),int(d),int(h),int(m),int(s)) for y,m,d,h,m,s in year,month,day,hour,minute,second]
это дает мне следующую ошибку:
ValueError: too many values to unpack
Я знаю, что это потому, что он пытается перебирать у, м, д, ч, м и s через каждый список, а не просто соединять их, например y с годом, m с месяцем и так далее. Итак, вот мой вопрос:
Как вы можете использовать понимание списка с 6 переменными, каждый из которых проходит через 1 из 6 отдельных списков? И если это невозможно, то какой эффективный способ сделать эквивалент?
, что работал отлично! один быстрый вопрос ... говорят, что это было не для объектов datetime, и я хотел сделать что-то вроде того, что сказал со списком. Возможно, я написал функцию, которая принимает 6 входов, и я хочу создать список с экземплярами этого ... это возможно? –
@RyanSaxe: вы перебираете каждый отдельный список компонентов; первый элемент цикла представляет собой список «год», затем список «месяц» и т. д., где вы пытаетесь распаковать каждый из этих списков на 6 переменных. Вы тоже хотели использовать 'zip()'. –
Ах, так что все это вместе, так что это одно! Поэтому, если бы я использовал старый метод, кроме как с 'zip (год, месяц, день, час, минута, секунда)', это сработало бы? –