Về cơ bản giống như câu trả lời của gringo suave, nhưng với một máy phát điện:
from datetime import datetime, timedelta
def datetime_range[start=None, end=None]:
span = end - start
for i in xrange[span.days + 1]:
yield start + timedelta[days=i]
Sau đó, bạn có thể sử dụng nó như sau:
In: list[datetime_range[start=datetime[2014, 1, 1], end=datetime[2014, 1, 5]]]
Out:
[datetime.datetime[2014, 1, 1, 0, 0],
datetime.datetime[2014, 1, 2, 0, 0],
datetime.datetime[2014, 1, 3, 0, 0],
datetime.datetime[2014, 1, 4, 0, 0],
datetime.datetime[2014, 1, 5, 0, 0]]
Hoặc như thế này:
In []: for date in datetime_range[start=datetime[2014, 1, 1], end=datetime[2014, 1, 5]]:
...: print date
...:
2014-01-01 00:00:00
2014-01-02 00:00:00
2014-01-03 00:00:00
2014-01-04 00:00:00
2014-01-05 00:00:00
Viết một chương trình Python để có được một danh sách các ngày giữa hai ngày.Python DateTime: Tập thể dục-50 với giải pháp
Giải pháp mẫu::
Mã Python:
from datetime import timedelta, date
def daterange[date1, date2]:
for n in range[int [[date2 - date1].days]+1]:
yield date1 + timedelta[n]
start_dt = date[2015, 12, 20]
end_dt = date[2016, 1, 11]
for dt in daterange[start_dt, end_dt]:
print[dt.strftime["%Y-%m-%d"]]
Đầu ra mẫu:
2015-12-20 2015-12-21 2015-12-22 2015-12-23 2015-12-24 2015-12-25 2015-12-26 2015-12-27 2015-12-28 2015-12-29 2015-12-30 2015-12-31 ------- 2016-01-08 2016-01-09 2016-01-10 2016-01-11
Flowchart:
Trực quan hóa thực thi mã Python:
Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:
Trình chỉnh sửa mã Python:
Đóng góp mã và nhận xét của bạn thông qua Disqus.
Trước đây: Viết chương trình Python để chuyển đổi một chuỗi thành DateTime.next: Viết chương trình Python để tạo dấu thời gian RFC 3339.
Write a Python program to convert a string into datetime.
Next: Write a Python program to generate RFC 3339 timestamp.
Mức độ khó của bài tập này là gì?
Kiểm tra kỹ năng lập trình của bạn với bài kiểm tra của W3Resource.
Python: Lời khuyên trong ngày
Đặt tên và lưu lát cắt của Iterables:
# Naming slices [slice[start, end, step]] >>> a = [0, 1, 2, 3, 4, 5] >>> LASTTHREE = slice[-3, None] >>> LASTTHREE slice[-3, None, None] >>> a[LASTTHREE] [3, 4, 5]
- Bài tập: Top 16 chủ đề phổ biến nhất hàng tuần
- Bài tập SQL, Thực hành, Giải pháp - Tham gia
- Bài tập SQL, Thực hành, Giải pháp - Quan sát phụ
- JavaScript Basic - Bài tập, Thực hành, Giải pháp
- Java Array: Bài tập, Thực hành, Giải pháp
- C Bài tập lập trình, Thực hành, Giải pháp: Tuyên bố có điều kiện
- Cơ sở dữ liệu nhân sự - Sắp xếp bộ lọc: Bài tập, Thực hành, Giải pháp
- C Bài tập lập trình, Thực hành, Giải pháp: Chuỗi
- Các loại dữ liệu Python: Từ điển - Bài tập, Thực hành, Giải pháp
- Câu đố lập trình Python - Bài tập, Thực hành, Giải pháp
- Mảng C ++: Bài tập, Thực hành, Giải pháp
- Báo cáo và vòng lặp có điều kiện JavaScript - Bài tập, Thực hành, Giải pháp
- Thuật toán cơ bản C# Sharp: Bài tập, Thực hành, Giải pháp
- Python Lambda - Bài tập, Thực hành, Giải pháp
- Python Pandas DataFrame: Bài tập, Thực hành, Giải pháp
- Công cụ chuyển đổi
- JavaScript: HTML Mẫu xác thực