logo サブスレッド

Google日本語入力で日付入力 by.Python

最近は始業時間を早めて朝型生活をするようにしてます。tama です。
夜寝る時間も少し早くなりました(概ね3時までには寝る)。

以前むおおおおおが紹介してくれた「Google日本語入力で日付入力」、私にはふたつの課題があります。

  • 変換前の入力文字は半角でいい
  • package.json やら node_modules やらができてごちゃつく感じがする

そこで古くから馴染みのあるPythonで書き直してみました。

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import sys
import locale
from datetime import date, timedelta

locale.setlocale(locale.LC_TIME, 'ja_JP')


def print_record(dt, text):
    print(dt.strftime('%m%d'), text, '名詞', sep='\t')
    # Python 2.x の場合は↓
    # print('\t'.join((dt.strftime('%m%d'), text, '名詞')))


def main(*years):
    for year in years:
        dt = date(year, 1, 1)
        while dt.year == year:
            print_record(dt, '{}{}{}日({})'.format(dt.year, dt.month, dt.day, dt.strftime('%a')))
            print_record(dt, '{}{}日({})'.format(dt.month, dt.day, dt.strftime('%a')))
            dt += timedelta(1)


if __name__ == '__main__':
    main(*[int(arg) for arg in sys.argv[1:]] if len(sys.argv) >= 2 else [date.today().year])

make-calendar-dic.py とでも名前を付けて保存。実行権限を付ければ直接実行もできます。

むおおおお版は「今日から1年」、tama版は「今年1年」という違いはありますが、
“Battery Included” な Python は標準ライブラリだけでシンプルに書くことができます(o'ヮ'o)

使い方はむおおおお版と同じようにリダイレクトでテキストファイルに書き出して Google日本語入力の辞書ツールで import します。

引数に西暦年(複数可)を入れれば指定の年の出力ができます。
python make-calendar-dic.py 2020 2021 > calendar2020-2021.txt

単に好みの違いですがPythonだけで完結したい方は参考にどうぞ。

現在の位置:サブスレッド ホーム > 技術ブログ > Google日本語入力で日付入力 by.Python