找年干支


# -*- coding: utf-8 -*-
"""
Created on Mon Jan 31 12:05:45 2022
找年干支
@author: Administrator
"""

niangan = {'辛':1, '壬':2, '癸':3,
           '甲':4, '乙':5, '丙':6, 
           '丁':7, '戊':8, '己':9, '庚':0}

#print(niangan)

year = input('请输入年份(1950-2045):')
year1 = int(year) #转化为数字
year2 = list(year) #把数字转化为列表
year3 = int(year2[3]) # 把个位数转为数字

for gan, shu in  niangan.items(): # 找niangan里面键值对
    if shu == year3: # 如果年的个位数等于输入的值
        gan1 = gan # 找出年干
        #print(gan)

nianzhi = {'寅':[1950, 1962, 1974, 1986, 1998, 2010, 2022, 2034], 
           '卯':[1951, 1963, 1975, 1987, 1999, 2011, 2023, 2035],
           '辰':[1952, 1964, 1976, 1988, 2000, 2012, 2024, 2036],
           '巳':[1953, 1965, 1977, 1989, 2001, 2013, 2025, 2037],
           '午':[1954, 1966, 1978, 1990, 2002, 2014, 2026, 2038],
           '未':[1955, 1967, 1979, 1991, 2003, 2015, 2027, 2039],
           '申':[1956, 1968, 1980, 1992, 2004, 2016, 2028, 2040],
           '酉':[1957, 1969, 1981, 1993, 2005, 2017, 2029, 2041],
           '戌':[1958, 1970, 1982, 1994, 2006, 2018, 2030, 2042],
           '亥':[1959, 1971, 1983, 1995, 2007, 2019, 2031, 2043],
           '子':[1960, 1972, 1984, 1996, 2008, 2020, 2032, 2044],
           '丑':[1961, 1973, 1985, 1997, 2009, 2021, 2033, 2045],}

for zhi, nian in nianzhi.items():
    for items in nian:
        if items == year1:
            zhi1 = zhi
            #print(zhi)

print(gan1+zhi1+"年")