Tôi cần tính toán số ngày cho một tháng nhất định ở Python. Nếu người dùng nhập vào tháng 2 năm 2011, chương trình sẽ có thể nói với tôi rằng tháng 2 năm 2011 có 28 ngày. Bất kỳ ai có thể cho tôi biết tôi nên sử dụng thư viện nào để xác định độ dài của một tháng nhất định.
hỏi ngày 8 tháng 2 năm 2011 lúc 21:04Feb 8, 2011 at 21:04
0
Bạn nên sử dụng
>>> from calendar import monthrange
>>> monthrange[2012, 2]
[2, 29]
0:>>> from calendar import monthrange
>>> monthrange[2011, 2]
[1, 28]
Chỉ cần rõ ràng,
>>> from calendar import monthrange
>>> monthrange[2012, 2]
[2, 29]
1 cũng hỗ trợ những năm bước nhảy:>>> from calendar import monthrange
>>> monthrange[2012, 2]
[2, 29]
Như @Mikhail-Pyrev đã đề cập trong một bình luận:
Số đầu tiên là ngày trong tuần của ngày đầu tiên của tháng, số thứ hai là số ngày trong tháng nói.
Đã trả lời ngày 8 tháng 2 năm 2011 lúc 21:06Feb 8, 2011 at 21:06
Andrew Hareandrew HareAndrew Hare
339K71 Huy hiệu vàng635 Huy hiệu bạc630 Huy hiệu Đồng71 gold badges635 silver badges630 bronze badges
5
Giải pháp thay thế:
>>> from datetime import date
>>> [date[2012, 3, 1] - date[2012, 2, 1]].days
29
Đã trả lời ngày 9 tháng 2 năm 2011 lúc 13:16Feb 9, 2011 at 13:16
Bjorn Lindqvistbjörn LindqvistBjörn Lindqvist
Phim thương hiệu vàng 18,5K1818 gold badges81 silver badges121 bronze badges
3
Chỉ vì lợi ích học tập, tôi đã làm theo cách này ...
[dt.replace[month = dt.month % 12 +1, day = 1]-timedelta[days=1]].day
Mike g
4.1729 Huy hiệu vàng45 Huy hiệu bạc64 Huy hiệu Đồng9 gold badges45 silver badges64 bronze badges
Đã trả lời ngày 30 tháng 5 năm 2013 lúc 17:13May 30, 2013 at 17:13
Nếu bạn muốn tìm hiểu bao nhiêu ngày một tháng khi sử dụng Python, hãy sử dụng đoạn trích này: Mô -đun from calendar import monthrange
num_days = monthrange[2019, 2][1] # num_days = 28
print[num_days] # Prints 28
2 tự động tính đến các năm nhảy.>>> from calendar import monthrange
>>> monthrange[2012, 2]
[2, 29]
Bạn cũng có thể sử dụng đoạn trích chức năng này:
from calendar import monthrange def number_of_days_in_month[year=2019, month=2]: return monthrange[year, month][1] # Usage example: print[number_of_days_in_month[2019, 2]] # Prints 28
Bạn cũng có thể cài đặt thư viện Python3 của tôi UliEngineering bằng cách cài đặt sudo pip3 -u uliengineering và sau đó sử dụng
>>> from calendar import monthrange
>>> monthrange[2012, 2]
[2, 29]
3 bằng cách nhập nó như thế này:from UliEngineering.Utils.Date import *
Giả sử chúng ta có một năm y và một tháng M, chúng ta phải trả lại số ngày của tháng đó cho năm nhất định. Vì vậy, nếu y = 1992 và m = 7, thì kết quả sẽ là 31, nếu năm là 2020 và m = 2, thì kết quả là 29.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước này -
- Nếu m = 2, thì
- Nếu y là một năm nhảy, trở lại 29, nếu không 28
- Tạo một mảng với các yếu tố [1,3,5,7,8,10,12]
- Nếu m nằm trong danh sách, thì hãy trả về 31, nếu không, sẽ trả về 30.
Example[Python]
Hãy cho chúng tôi xem triển khai sau đây để hiểu rõ hơn -
& nbsp; bản demo trực tiếp
class Solution[object]: def numberOfDays[self, y, m]: leap = 0 if y% 400 == 0: leap = 1 elif y % 100 == 0: leap = 0 elif y% 4 == 0: leap = 1 if m==2: return 28 + leap list = [1,3,5,7,8,10,12] if m in list: return 31 return 30 ob1 = Solution[] print[ob1.numberOfDays[2020, 2]]
Đầu vào
2020 2
Đầu ra
29
Cập nhật vào ngày 28 tháng 4 năm 2020 08:35:20
- Câu hỏi và câu trả lời liên quan
- C# Chương trình hiển thị số ngày trong một tháng
- Làm thế nào để tìm ra số ngày trong một tháng trong MySQL?
- Làm thế nào để có được một số ngày trong một tháng được chỉ định bằng JavaScript?
- Làm thế nào để tìm số ngày trong một tháng của một năm cụ thể ở Java?
- Python Pandas - Nhận tổng số ngày trong tháng mà thời gian rơi vào
- Làm thế nào để in các ngày trong một tháng nhất định bằng Python?
- Python Pandas - Nhận số ngày từ Timedelta
- Nhận tên tháng thay vì số tháng số trong báo cáo trong SAP
- Nhận tên tháng từ số tháng trong MySQL?
- Chương trình Python để tìm ra giá của một sản phẩm sau một số ngày
- Chương trình chuyển đổi số ngày nhất định về số năm, tuần và ngày ở C
- C chương trình để chuyển đổi ngày thành tháng và số ngày
- Chỉ xuất ra tên của tháng thay vì số tháng trong MySQL
- Chương trình Python để tìm số ngày giữa hai ngày đã cho
- Chương trình tìm số ngày tối thiểu để ăn n cam trong Python