我在Python中有以下代碼。它需要一個datimetime dt
並檢查它是否屬於Type1
或Type2
。如果沒有這些類型的被觸發,則None
返回:如何用Json字符串替換給定的數據結構?
self.daytypes = {
'Type1': (
date(2015, 3, 12),
date(2015, 4, 8)
),
'Type2': (
date(2015, 1, 4),
date(2015, 3, 9),
date(2015, 5, 25)
)
}
def getDayType(self,dt):
holidays = []
for d in self.daytypes:
holidays.extend(self.daytypes[d])
wd = dt.isoweekday()
daytype = None
for t, ranges in self.daytypes.items():
for day in ranges:
if (day == dt.date()):
daytype = t
break
if daytype is not None:
break
return daytype
現在我想通過一個JSON字符串myJson
取代數據結構self.daytypes
:
{"Type1":["2015-03-12","2015-04-08"],"Type2":["2015-01-04","2015-03-09","2015-05-25"]}
有沒有簡單的方法來使它用最少的代碼更新?
你想設置self.daytypes從你的json? –
@MohideenibnMohammed:是的,我正在尋找一個最佳解決方案。在我看來,最優化的方法是從json中設置self.daytypes而不更改其餘代碼(即函數getDayType)。但是,如果你有另一個建議,那麼你非常歡迎。 – Dinosaurius