Пример #1
0
 def _update_internal_state(self, time_date):
     date = dt_util.as_local(time_date).date()
     calendar = KoreanLunarCalendar()
     calendar.setSolarDate(date.year, date.month, date.day)
     lunar_date = calendar.LunarIsoFormat()
     self._state = lunar_date
     self._attribute = {
         'korean_gapja': calendar.getGapJaString(),
         'chinese_gapja': calendar.getChineseGapJaString()
     }
Пример #2
0
def printInformation(year, is_intercalation=False):
    today = datetime.today()
    year = today.year
    month = today.month
    day = today.day
    calendar = KoreanLunarCalendar()
    calendar.setSolarDate(year, month, day)

    print('Year: {}'.format(year))

    # 할머니: (음) 5/23
    calendar.setLunarDate(year, 5, 23, is_intercalation)
    print('할머니 제사 (음) 5/23')
    print('* Solar: {}'.format(calendar.SolarIsoFormat()))
    print('* Lunar: {}'.format(calendar.LunarIsoFormat()))
    print('* Hangul: {}'.format(calendar.getGapJaString()))
    print('* Hanja: {}'.format(calendar.getChineseGapJaString()))

    calendar.setLunarDate(year, 5, 1, is_intercalation)
    print('초하루 (음) 5/1')
    print('* Solar: {}'.format(calendar.SolarIsoFormat()))
    print('* Lunar: {}'.format(calendar.LunarIsoFormat()))
    print('* Hangul: {}'.format(calendar.getGapJaString()))
    print('* Hanja: {}'.format(calendar.getChineseGapJaString()))

    print('------------------------------')

    # 할아버지: (음) 8/6
    calendar.setLunarDate(year, 8, 6, is_intercalation)
    print('할아버지 제사 (음) 8/6')
    print('* Solar: {}'.format(calendar.SolarIsoFormat()))
    print('* Lunar: {}'.format(calendar.LunarIsoFormat()))
    print('* Hangul: {}'.format(calendar.getGapJaString()))
    print('* Hanja: {}'.format(calendar.getChineseGapJaString()))

    print('초하루 (음) 8/1')
    calendar.setLunarDate(year, 8, 1, is_intercalation)
    print('* Solar: {}'.format(calendar.SolarIsoFormat()))
    print('* Lunar: {}'.format(calendar.LunarIsoFormat()))
    print('* Hangul: {}'.format(calendar.getGapJaString()))
    print('* Hanja: {}'.format(calendar.getChineseGapJaString()))
Пример #3
0
 def lunar_gapja(self, lunarDate):
     intercalation = False
     if '윤달' in lunarDate:
         intercalation = True
         lunarDate = lunarDate.replace(INTERCALATION, '')
     calendar = KoreanLunarCalendar()
     try:
         lunar = dt_util.parse_date(lunarDate)
         calendar.setLunarDate(lunar.year, lunar.month, lunar.day,
                               intercalation)
     except AttributeError:
         try:
             calendar.setLunarDate(lunarDate[:4], lunarDate[5:7],
                                   lunarDate[8:], intercalation)
         except:
             return "-"
     return calendar.getGapJaString()