解答例_2_12

def seireki_to_gengo(seireki):
    '''西暦を元号に変換する関数
    引数は 1926 以上 2024 以下の整数
    戻り値はstr'''

    if isinstance(seireki, int) and (1926 <= seireki <= 2024):
        if seireki == 1926:
            gengo = '大正15年/昭和元年'
        elif 1927 <= seireki <= 1988:
            gengo = '昭和' + str(seireki - 1925) + '年'
        elif seireki == 1989:
            gengo = '昭和64年/平成元年'
        elif 1990 <= seireki <= 2018:
            gengo = '平成' + str(seireki - 1988) + '年'
        elif seireki == 2019:
            gengo = '平成31年/令和元年'
        else:
            gengo = '令和' + str(seireki - 2018) + '年'
    
    else:
        gengo = '1926 以上 2024 以下の整数を入力してください'

    return gengo

確認

1925, 1926, 1927, 1988, 1989, 1990, 2018, 2019, 2020, 2024, 2025 についてそれぞれ問題ないことを確認してください。

print(seireki_to_gengo(1925)) # 1926 以上 2024 以下の整数を入力してください
print(seireki_to_gengo(1926)) # 大正15年/昭和元年
print(seireki_to_gengo(1927)) # 昭和2年
print(seireki_to_gengo(1988)) # 昭和63年
print(seireki_to_gengo(1989)) # 昭和64年/平成元年
print(seireki_to_gengo(1990)) # 平成2年
print(seireki_to_gengo(2018)) # 平成30年
print(seireki_to_gengo(2019)) # 平成31年/令和元年
print(seireki_to_gengo(2020)) # 令和2年
print(seireki_to_gengo(2024)) # 令和6年
print(seireki_to_gengo(2025)) # 1926 以上 2024 以下の整数を入力してください

1926 以上 2024 以下の整数を入力してください
大正15年/昭和元年
昭和2年
昭和63年
昭和64年/平成元年
平成2年
平成30年
平成31年/令和元年
令和2年
令和6年
1926 以上 2024 以下の整数を入力してください

タイトルとURLをコピーしました