Python編程題:兩個日期間的天數統計(附代碼)

2021-01-10 科技研究員猴哥

編程題一:計算兩個日期之間的天數

題目如下:

題目一

解題思路:

將兩個日期格式化成time模塊中的標準時間結構struct_time,缺少值用0補齊利用time模塊函數分別計算兩個日期到時間戳(指格林威治時間1970年01月01日00時00分00秒)的總秒數將2中計算得到的兩個秒數相減,除以一天的總秒數(24*3600秒)即可算出兩日期間的天數註:時間戳指的是格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數!由於python中time模塊的很多函數都是可以直接計算出指定時間的時間戳(秒數),所以統計兩個日期間的總天數就非常方便了!

代碼與運行結果:

代碼與運行結果

代碼解析:

time1 = (int(t1[0]),int(t1[1]),int(t1[2]),0,0,0,0,0,0)這裡補足6個0是因為在struct_time類型中至少需要9個值,而已經有了年月日,所以其他6個值都用0填充,這樣一個struct_time類型的所有元素就齊全了,下一步計算時間戳timestru1 = time.mktime(time1)time.mktime()函數的參數為struct_time類型中的元素構成的元組,即上面的time1一個問題:下面代碼中的「//」目的是什麼?print('兩個日期之間的總天數為:%d 天' % (int(abs(timestru2-timestru1))//24//3600))補充知識如下:

struct_time類型與時間格式轉換

思考:如果不使用上述方法,該怎樣統計兩個日期之間的總天數呢?

思考題

問題二:如何計算今天是今年的第幾天?

感興趣的讀者可以繼續使用time模塊中的函數來思考本題:

思考題二

感興趣的讀者可以評論區使用圖片形式交流具體的代碼實現!本文如有任何不足之處,歡迎讀者批評指正,謝謝!

相關焦點

  • EXCEL小技巧:如何計算兩個日期間工作日的天數
    帶有日期的單元格是我們日常使用EXCEL的時候經常見到的,有的時候我們需要求出兩個日期之間間隔的天數,可以直接用結束日期減去開始日期即可,這是個非常簡單的減法公式。這個公式雖然比較簡單,但如果稍加變換下,要你求出兩個日期間工作日的天數又該如何?可能天數比較近,比如只有十幾天,還可以手動計算下,但是如果兩個日期之間間隔有上白天,那就不是一般的人力所能為之了,這裡我們需要用到EXCEL當中的NETWORKDAYS函數。
  • python編程30個常用技巧
    打開APP python編程30個常用技巧 深度學習這件小事 發表於 2020-12-24 15:07:51 1、冒泡排序
  • 35行代碼利用python生成字符畫,非常適合初學者練習,附源碼!
    35行代碼利用python生成字符畫,非常適合初學者練習,附源碼! python字符畫生成的原理及其簡單,一句話概括就是----將圖片像素點用不同字符代替,從而將像素組成的圖片轉變成用字符組成的字符畫。為了儘可能的使得字符畫展示效果與圖片相同。
  • Github超10000星:100天從Python新手到大師
    簡單的說,Python是一個「優雅」、「明確」、「簡單」的程式語言。學習曲線低,非專業人士也能上手開源系統,擁有強大的生態圈解釋型語言,完美的平臺可移植性支持面向對象和函數式編程能夠通過調用C/C++代碼擴展功能代碼規範程度高,可讀性強目前幾個比較流行的領域,Python都有用武之地。
  • 濟南機器人編程_山東機器人編程_機器人編程
    柱狀圖:柱狀圖(bar chart),是一種以長方形的長度為變量的表達圖形的統計報告圖,由一系列高度不等的縱向條紋表示數據分布的情況,用來比較兩個或以上的價值(不同時間或者不同條件),只有一個變量,通常利用於較小的數據集分析。柱狀圖亦可橫向排列,或用多維方式表達。
  • Python面向對象編程的基本概念
    九道門商業數據分析學院提供介紹在學習面向對象的編程時。我決定深入了解它的歷史,結果令人著迷。術語「面向對象程序設計」(OOP)是艾倫·凱(Alan Kay)在1966年讀研究生時提出的。名為Simula的語言是第一種具有面向對象編程功能的程式語言。它是在1967年開發的,用於製作仿真程序,其中最重要的信息稱為對象。
  • 少兒編程課程為什麼學習Python 有什麼優勢?-七考網
    ;其實不止浙江,教育大省山東也即將把Python編程基礎納入信息技術課程和高考的內容體系。簡單易學「Life is short, you need Python」Python的語言沒有多少儀式化的東西,所以就算不是一個 Python 專家,你也能讀懂它的代碼。Python 的語法裡麵條條框框以及特殊的處理場景要少得多。 它所專注的並非語言表現的豐富程度,而是你想要用你的代碼完成什麼。
  • C#DateTime類擴展——獲取旬、季、年天數方法
    在C#中處理這個問題的話,就利用時間類的DaysInMonth方法(該方法的需要的參數為年和月)獲取到當月天數,然後減去上旬和中旬的天數即為下旬的天數。代碼實現如下:    獲取旬天數    每年會有四季,每季三個月,除2月份會因為受到平年、閏年影響(平年2月份有28天,閏年有29天),
  • 如何計算給定日期對應的年度周數、天數及兩個日期差的年月日數...
    三 計算當年已經過的天數公式:=TODAY()-DATE(YEAR(TODAY()),1,0)公式講解:TODAY()是指當前的日,DATE(YEAR(TODAY()),1,0)是指當前日的年度的第0天,相減後就是已經過去的天數。四 已知某人出生日為1972年9月1日,那麼這個人到當前日度過了多少個年月日?
  • 使用Python計算今天距離公元1年1月1日的天數
    計算天數Python實現距離公元1年1月1日的天數?要一天一天計算?有點Low,因為我們計算年份時還有閏年這一幹擾項。歷史的沙漏漏到今天,一天一天計算近似計算沙漏裡面的沙子,有難度啊。Python時間庫中沒有具體函數哦我們分三步計算該天數【今年距離公元0年有多少年】當然這個年份裡面有閏年有非閏年,我們分別對其進行計數,然後閏年*366天+非閏年*365天,就可以計算年份對應的天數。
  • 2020北京公務員考試報名人數最新統計(附查詢入口)
    一、2020北京公務員考試報名第3日(11月20日18:00數據)報名人數統計  2020北京公務員考試報名第2日,從北京華圖統計數據來看,截至11月20日18:00,2020年北京公務員考試報名審核通過人數為23621人,412個崗位暫無人通過審核,各位考生可密切關注,抓住機會。
  • MetDig 用Python打造天氣診斷分析利器
    宮宇所在的天氣學診斷分析技術研發團隊看到了一個業務痛點——以前,每次重要天氣過程過後,預報員想要復盤分析研究時,就會各自去編寫代碼、搜集數據,這種分散勞動很大程度上造成了重複,浪費了寶貴的時間和精力。解決這一痛點成為他們確立的第一個目標。  一年過去了,一個等待更多天氣預報員和氣象愛好者「檢驗」的通用型天氣學診斷分析工具包(MetDig)登陸GitHub,供用戶下載使用。
  • python字符的編碼與解碼
    ASCII ((American Standard Code for Information Interchange): 美國信息交換標準代碼)是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言。這裡的編碼規定了,每個字符由幾個0和1組成,順序也定下了。裡面包含了控制字符或通信專用字符,阿拉伯數字,大小寫英文字符,標點運算符號等,一共128個。
  • 「測一測你的性格」小案例學習python字符串操作
    今天樹哥也嘗試用python做一個「性格測試小程序」,用這個案例來說明一下python的日曆和字符串操作的一些用法。一、案例分析案例題目:讓用戶輸入出生年月日,返回這是這一年的第幾周第幾天,並輸出當周的日曆。給出用戶的屬相給出用戶的星座,並告知用戶的性格。
  • 信息學編程經驗分享:人不聰明怎麼辦
    點擊查看原帖:[查看原帖參與討論]     孫的編程特別厲害,屬於那種腦袋特別靈,平時不看書也總能考最高分的。當年他高二的時候就已經是一等獎了,高三的時候再次無懸念拿了一等獎。而我花了兩年的時間才拿了那個一等獎。         我記得當年複試的第一道題是排序,我用的快速排序法,拿了70分,而孫用的平衡二叉樹,100分。
  • 閣下可知文言編程之精妙?
    而程式語言的出現,讓人類和計算機產生了真正的聯繫,推動了現代文明的發展。那麼,將古代漢語和程式語言結合又會產生怎樣的火花?最近,GitHub 上出現了一個文言文做代碼的項目,幾乎是世界上第一門文言文程式語言。
  • 北大青鳥計算機編程培訓學校哪家更好?
    北大青鳥計算機編程培訓學校哪家更好?計算機編程培訓學校哪家好?現在市面上的培訓機構越來越多,甚至有些新成立的小機構大力宣傳,結果學校的整體規模和師資實力並不能保證學員的學習,遇到這樣的計算機培訓機構一定要擦亮雙眼。北大青鳥佳音IT學院依託雄厚的教育資源和背景,秉承「教育改變生活」的辦學理念,一直致力於培養IT技能型緊缺人才。
  • 文言文不能編程乎?一名被編程耽誤的古文高手:我可以
    有人開發了一種「文言文程式語言」,用文言文寫的程式語言,密切遵循文言文語法和中國古典文學的基調,被評價過於硬核。戳右邊連結上新智元小程序了解更多!這就是最近被盛傳的:文言文程式語言「wenyan-lang」。GitHub上線5天時間,已經突破了6000星。文言文也能編程?最早的彙編語言,在普通人類看起來就是毫無意義的一堆數字,只有少數神秘的高智商天才才能看得懂。後來程式語言逐漸的進化,現代的程式語言已經越來越接近人類的自然語言了。