Я пытаюсь использовать несколько условий внутри выражения, если-то еще, который, как:Python с использованием нескольких условий внутри цикла
from datetime import date, timedelta as td, datetime
import holidays
st_dt = '1/1/2017'
en_dt = '1/5/2017'
st_year = datetime.strptime(st_dt, "%m/%d/%Y").year
en_year = datetime.strptime(en_dt, "%m/%d/%Y").year
st_mnth = datetime.strptime(st_dt, "%m/%d/%Y").month
en_mnth = datetime.strptime(en_dt, "%m/%d/%Y").month
st_date = datetime.strptime(st_dt, "%m/%d/%Y").day
en_date = datetime.strptime(en_dt, "%m/%d/%Y").day
d1 = datetime(st_year, st_mnth, st_date, 0, 0, 0)
d2 = datetime(en_year, en_mnth, en_date, 0, 0, 0)
AllHours = []
i = 0
while(d1<=d2):
AllHours.append(d1)
d1 = d1 + td(hours=1)
us_holidays = holidays.UnitedStates()
HolidayWorkingDay = ['H' if x in us_holidays else 'W' for x in AllHours]
HE = [x.hour for x in AllHours]
DayDefn = ['Type1' if (x == 'H' and y>=7 and y<=23) else 'Type2' for x in HolidayWorkingDay and for y in HE]
Так, в приведенном выше я пытаюсь, чтобы убедиться, что если определенное место в списки HolidayWorkingDay и HE отвечают определенным критериям, я даю им имя «Type1», иначе они «Type2»
Но он не работает на последней строке из-за плохого синтаксиса. Я не уверен, что правильно писать множественное выражение является
Что вы намерены что 'и у в Он немного в конце, чтобы сделать? – user2357112
Где находится генератор? –
см. Https://docs.python.org/2/tutorial/datastructures.html#list-comprehensions ... особенно тот, который имеет как x, так и y. –