使用localtime計算當月第幾週

看板Python作者 (我的桌子下有躲人)時間6年前 (2019/02/03 03:40), 6年前編輯推噓8(805)
留言13則, 6人參與, 6年前最新討論串1/1
各位先進大家好 小弟最近趁著過年有空 在練習自己想的題目時遇到以下的問題 在使用localtime函數的時候 能顯示出tm_wday與tm_mday兩個參數 分別是星期幾與當月的日期 想請問是否有辦法在不用49個if的情況下 或是其他迴圈比大小的方式下 透過計算的方式求出今天是當月的第幾週 ex.像是今年2月2號是第一週 2月3號是第二週 雖然感覺是很簡單的七進位問題 想了很多天也google了一些關鍵字不過還是找不太到(有使用其他函數的方法) 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.218.127.57 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1549136439.A.2D9.html ※ 編輯: jimmy10309 (49.218.127.57), 02/03/2019 03:42:03

02/03 07:32, 6年前 , 1F
幹嘛不用datetime或strftime
02/03 07:32, 1F

02/03 09:28, 6年前 , 2F
我記得 datetime 有現成的吧 挖原始碼看阿
02/03 09:28, 2F
好的謝謝各位 ※ 編輯: jimmy10309 (49.218.127.57), 02/03/2019 09:50:00

02/03 10:29, 6年前 , 3F
.dayofyear
02/03 10:29, 3F

02/03 11:11, 6年前 , 4F
用算的話,先定義是週一還是週日分週
02/03 11:11, 4F
基本上希望一日分別為0到6 不過這問題比較小可以換算

02/03 11:14, 6年前 , 5F
用分週日當分組點就可以用查表法取出組序當週數
02/03 11:14, 5F
查表的話會不會變的有點太長

02/03 12:51, 6年前 , 6F
這個我有寫過 我的計算方式是先算出那個月第一個禮拜幾
02/03 12:51, 6F

02/03 12:51, 6年前 , 7F
是哪一天 再用要算出的那天減去前面計算的 以周為單位
02/03 12:51, 7F

02/03 12:51, 6年前 , 8F
就可以了
02/03 12:51, 8F
這樣是不是要把7個狀況都列出來?再去做判斷

02/03 13:04, 6年前 , 9F
(今天的tm_mday - 1 + 月初的tm_wday)?7 + 1 = 答案
02/03 13:04, 9F
※ 編輯: jimmy10309 (49.218.127.57), 02/03/2019 13:07:05

02/03 13:07, 6年前 , 10F
上面的除法是整數運算
02/03 13:07, 10F

02/03 13:08, 6年前 , 11F
那個問號是「除法」符號
02/03 13:08, 11F
是斜線/嗎? 好笑有點抓到問題了 應該要用今天星期幾去推這個月第一天是星期幾 一直糾結在%7的結 果 謝謝大家 ※ 編輯: jimmy10309 (49.218.127.57), 02/03/2019 13:17:31

02/03 13:39, 6年前 , 12F
嗯,是 /
02/03 13:39, 12F

02/03 23:12, 6年前 , 13F
感謝樓上 就是這樣~
02/03 23:12, 13F
文章代碼(AID): #1SLV8tBP (Python)
文章代碼(AID): #1SLV8tBP (Python)