作品構(gòu)思
農(nóng)歷,是我國(guó)傳統(tǒng)歷法,是幾千年來(lái)勞動(dòng)人民智慧的結(jié)晶,是中華傳統(tǒng)文化瑰寶,蘊(yùn)含著豐富的科學(xué)知識(shí)。一直以來(lái),農(nóng)歷指導(dǎo)勞動(dòng)人民日出而作,日落而息,周而復(fù)始,養(yǎng)育了一代代中華兒女。但是,隨著現(xiàn)代化進(jìn)程不斷加快,農(nóng)歷歷法的民間傳承幾乎斷檔。設(shè)計(jì)農(nóng)歷與公歷日期轉(zhuǎn)換算法,旨在幫助我們了解我國(guó)傳統(tǒng)歷法,理解農(nóng)歷在我國(guó)文化中的重要意義,堅(jiān)定文化自信,肩負(fù)起傳承中華傳統(tǒng)文化的重任。
項(xiàng)目制作過(guò)程
項(xiàng)目制作過(guò)程包括如下步驟。
1.認(rèn)識(shí)與分享:農(nóng)歷歷法
(1)整理任務(wù)單。任務(wù)單內(nèi)容包括:農(nóng)歷歷史溯源;農(nóng)歷的周期。
(2)項(xiàng)目組搜集信息并匯報(bào)研究結(jié)果。我們結(jié)合當(dāng)前農(nóng)歷歷法規(guī)則說(shuō)明農(nóng)歷歷法計(jì)算規(guī)則,農(nóng)歷閏年是19年中有7個(gè)閏年,閏月則是需要根據(jù)閏年在這19年中對(duì)應(yīng)的位置,在相應(yīng)的月份后插入一個(gè)月,也稱為閏幾月,更精確的算法需要結(jié)合現(xiàn)代科技手段進(jìn)行測(cè)算。
2.學(xué)習(xí)Python基礎(chǔ)語(yǔ)法
(1)以判斷閏年為例設(shè)計(jì)算法,得出判斷方式為“四年一閏,百年不閏,四百年再閏”。
(2)算法是解決一類特定問(wèn)題而采取的確定的有限的步驟。我們自學(xué)教材,應(yīng)用ProcessOn軟件繪制流程圖,利用流程圖描述算法。
(3)學(xué)習(xí)算法的三種結(jié)構(gòu)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)),依靠流程圖理解算法的執(zhí)行過(guò)程。
(4)學(xué)習(xí)Python語(yǔ)言基本語(yǔ)法,學(xué)習(xí)數(shù)據(jù)類型、常量與變量、輸入與輸出、運(yùn)算符等常見(jiàn)語(yǔ)法結(jié)構(gòu)。
(5)利用Pycharm編譯工具演示編寫(xiě)選擇結(jié)構(gòu)代碼,使用if…elif…else格式編寫(xiě)代碼。
3.構(gòu)建農(nóng)歷數(shù)據(jù)轉(zhuǎn)換器
(1)項(xiàng)目設(shè)計(jì):確立項(xiàng)目目標(biāo)是構(gòu)建農(nóng)歷數(shù)據(jù)轉(zhuǎn)換器,將公歷日期轉(zhuǎn)換為農(nóng)歷日期,加深對(duì)農(nóng)歷歷法的了解;設(shè)立項(xiàng)目基礎(chǔ)功能,計(jì)算未來(lái)三年的春節(jié)日期;輸入公歷日期即刻轉(zhuǎn)化為公歷日期。
(2)撰寫(xiě)項(xiàng)目文本,設(shè)計(jì)算法的流程和功能。
(3)因農(nóng)歷歷法中存在19年7閏的復(fù)雜情況,實(shí)現(xiàn)起來(lái)較為困難,采用了農(nóng)歷算法庫(kù)lunarcalendar來(lái)進(jìn)行公歷與農(nóng)歷間的轉(zhuǎn)換。但是該庫(kù)并非是完全精確的算法,而是使用了一些規(guī)則和逼近方法來(lái)計(jì)算。
(4)pip命令和導(dǎo)入第三方庫(kù)的方法。命令行輸入命令為:pip install lunarcalendar。
(5)教師提供文心一言問(wèn)答接口,我們通過(guò)問(wèn)答輔助代碼實(shí)現(xiàn)。
(6)調(diào)試完代碼后,完善項(xiàng)目文本。
項(xiàng)目反思與創(chuàng)新點(diǎn)
農(nóng)歷歷法的測(cè)算存在著一定程度的復(fù)雜性、不確定性,因此,很難找到準(zhǔn)確精確的農(nóng)歷歷法,在展現(xiàn)形式上確實(shí)存在問(wèn)題,需要我們后續(xù)繼續(xù)結(jié)合天文學(xué)方面的知識(shí)繼續(xù)探究。
項(xiàng)目功能演示
項(xiàng)目功能展示如下。
(1)此算法可輸出日歷上每個(gè)公歷日期對(duì)應(yīng)的農(nóng)歷日期。
(2)輸出未來(lái)三年農(nóng)歷春節(jié)具體公歷日期。