[Python] Hiển thị danh sách các ngày trong tuần, tháng

Trong những bài viết trước, tôi cũng có khá nhiều bài liên quan đến ngày, tháng như

Nhưng tất cả các bài viết đó được dùng trong PHP. Và hôm nay, tôi sẽ giới thiệu đến các bạn cách hiển thị danh sách các ngày có trong 1, 2…tuần và trong tháng bằng Python.

Hiển thị các ngày trong tuần, tháng

Đoạn code tôi sử dụng là

import datetime
import calendar

def get_dates_in_weeks(number_of_weeks=None):
	"""
	With this function, we can get list days which are contained in 1 week, 2 weeks...from today
	The results: [datetime.date(2014, 1, 1), datetime.date(2014, 1, 2), datetime.date(2014, 1, 3), datetime.date(2014, 1, 4), datetime.date(2014, 1, 5), datetime.date(2014, 1, 6), datetime.date(2014, 1, 7)]
	"""
	if number_of_weeks is None:
		number_of_weeks = 1

	days = number_of_weeks * 7
	today = datetime.date.today()
	weekday = today.weekday()
	start_delta = datetime.timedelta(days=weekday)
	start_of_week = today - start_delta
	week_dates = [start_of_week + datetime.timedelta(days=i) for i in range(days)]
	return week_dates

def get_dates_in_current_month():
	"""
	Get all days in current month
	The results: [datetime.date(2014, 1, 1), datetime.date(2014, 1, 2), datetime.date(2014, 1, 3),..., datetime.date(2014, 1, 29), datetime.date(2014, 1, 30), datetime.date(2014, 1, 31)]
	"""
	today = datetime.date.today()
	year = today.year
	month = today.month
	num_days = calendar.monthrange(year, month)[1]
	days = [datetime.date(year, month, day) for day in range(1, num_days+1)]
	return days

if __name__ == '__main__':

	# Show days in a week
	print get_dates_in_weeks()

	# Show days in 2 week
	print get_dates_in_weeks(2)

	# Show days in current month
	print get_dates_in_current_month()

Nếu các bạn chưa có điều kiện kiểm tra lại đoạn code trên thì có thể lên trang http://ideone.com đế kiểm tra. Và đây là kết quả mà tôi có được sau khi sử dụng trang web đó https://ideone.com/rk6wod.

Hi vọng đoạn code trên sẽ giúp ích cho các bạn. Thân ái!

 

Tấn Việt

Tôi lập trang web này để thỏa mãn sở thích viết cái gì đó vui vui khi rãnh rỗi và đồng thời cũng chia sẻ những gì tôi biết hoặc đọc đâu đó trên mạng về Lập trình web. Tôi hi vọng những bài viết này sẽ giúp ích cho các bạn. Thân ái!

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *