Hướng dẫn is python a weekday? - python có phải là ngày trong tuần không?
Trong Python, các lớp date, time và datetime cung cấp các hàm xử lý ngày, thời gian và khoảng thời gian. Date và datetime là đối tượng trong Python, vì vậy khi bạn thao tác với chúng, thực tế là bạn đang thao tác với các đối tượng chứ không phải chuỗi hoặc mốc thời gian. Bất cứ khi nào bạn cần thao tác với ngày hoặc thời gian, bạn cần nạp hàm datetime.date, time và datetime cung cấp các hàm xử lý ngày, thời gian và khoảng thời gian. Date và datetime là đối tượng trong Python, vì vậy khi bạn thao tác với chúng, thực tế là bạn đang thao tác với các đối tượng chứ không phải chuỗi hoặc mốc thời gian. Bất cứ khi nào bạn cần thao tác với ngày hoặc thời gian, bạn cần nạp hàm datetime. Các lớp datetime trong Python được phân thành 5 nhóm chính.
Trong bài này, chúng ta sẽ tìm hiểu về:
Cách sử dụng lớp Date & DateTime In ngày bằng date.today () Trước khi chạy mã nguồn với datetime, điều quan trọng cần làm là nạp mô-đun date và time như hình dưới đây: Ngày và giờ hiện tại trong Python: now() today() Định dạng ngày và giờ cho đầu ra với Strftime()
Cách sử dụng Đối tượng Timedelta Bước 1) Trước khi chạy mã nguồn với datetime, điều quan trọng cần làm là nạp mô-đun date và time như hình dưới đây: Tiếp theo chúng ta sẽ tạo một thực thể cho đối tượng này. Các câu lệnh nạp (import) trên sẽ cung cấp các hàm được định nghĩa sẵn trong thư viện Python, mà qua đó bạn có thể thao tác với ngày tháng và thời gian mà không cần viết thêm mã nguồn. Tiếp theo, chúng ta sẽ in ra ngày tháng và chạy đoạn mã. Trước khi thực khi mã nguồn với datetime, hãy xem dòng lệnh dưới đây: Câu lệnh này thông báo cho trình thông dịch Python rằng hãy nạp lớp date từ mô-đun datetime. Chúng ta sẽ không cần viết thêm mã nguồn cho chức năng ngày tháng mà chỉ cần nạp chúng trước khi sử dụng. Bước 2) Tiếp theo chúng ta sẽ tạo một thực thể cho đối tượng này. Bước 3) Tiếp theo, chúng ta sẽ in ra ngày tháng và chạy đoạn mã. Đầu ra thu được đúng như mong đợi. In ngày bằng date.today()
Thứ năm Thứ sáu Thứ bảy Giống như đối tượng Date, chúng ta cũng có thể sử dụng “đối tượng Datetime” trong Python. Nó đưa ra ngày cùng với thời gian tính bằng giờ, phút, giây và mili giây. Chủ nhật Số weekday rất hữu dụng cho các mảng sử dụng chỉ số phụ thuộc vào các ngày trong tuần. Với “đối tượng Datetime”, bạn cũng có thể gọi tới lớp thời gian. Ngày và giờ hiện tại của Python: now() today()
Bước 2) Với “đối tượng Datetime”, bạn cũng có thể gọi tới lớp thời gian. Giả sử chúng ta chỉ muốn in ra thời gian hiện tại mà không có ngày. Chúng ta đã nạp lớp thời gian time trước đó. Chúng ta sẽ gán cho nó giá trị thời gian hiện tại với datetime.now(). Chúng ta sẽ áp dụng chỉ số weekday cho mảng danh sách weekday để tìm ra hôm nay là thứ mấy.
Bạn có thể thấy chúng ta có được cả ngày và giờ. Ở dòng tiếp theo, chúng ta chỉ lấy ra giá trị thời gian.
Bước 3) Chúng ta sẽ áp dụng chỉ số weekday cho mảng danh sách weekday để tìm ra hôm nay là thứ mấy. Toán tử weekday(wd) được gán một số từ (0-6) tùy thuộc vào ngày hiện tại trong tuần là thứ mấy. Ở đây chúng ta khai báo một mảng cho các ngày trong tuần (Mon, Tue, Wed…Sun). Sử dụng giá trị chỉ số đó để biết ngày hiện tại là thứ mấy. Trong trường hợp này, giá trị thu được là #2, tức là ngày thứ tư, vì vậy kết quả đầu ra là “Which is a Wednesday”. Đầu tiên chúng ta sẽ tìm hiểu một cách định dạng năm đơn giản. Cùng xem ví dụ dưới đây:
Chúng ta sử dụng "hàm strftime" để định dạng. Bây giờ nếu bạn thay thế ("% Y") bằng chữ thường, nghĩa là ("% y”) và thực thi đoạn mã, đầu ra sẽ chỉ hiển thị (18) chứ không phải (2018). Thế kỷ của năm sẽ không được hiển thị như trong ảnh bên dưới. Hàm này sử dụng các mã điều khiển khác nhau để trả về kết quả. Hàm Strf có thể khai báo riêng ngày, thứ, tháng và năm. Ngoài ra chỉ với thay đổi nhỏ trong mã điều khiển trong hàm strftime bạn có thể định dạng lại kiểu văn bản hiển thị. Bên trong hàm strftime nếu bạn thay thế (%a) bằng chữ A, nghĩa là (%A), đầu ra sẽ in ra là "Friday" thay vì chỉ viết tắt "Fri". Bước 4) Với sự trợ giúp của chức năng "Strftime", chúng ta cũng có thể truy xuất thời gian, ngày hoặc cả hai của hệ thống. Với sự trợ giúp của chức năng "Strftime", chúng ta cũng có thể truy xuất thời gian, ngày hoặc cả hai của hệ thống.
Bạn có thể thấy chương trình in ra kết quả đúng như mong muốn. Bước 5) "Hàm strftime" cho phép bạn trả về thời gian dưới định dạng 24 giờ hoặc 12 giờ. "Hàm strftime" cho phép bạn trả về thời gian dưới định dạng 24 giờ hoặc 12 giờ. Chỉ bằng cách xác định mã điều khiển như %I/H cho giờ, %M cho phút, %S cho giây, ta có thể trả về thời gian dưới các định dạng khác nhau. Định dạng 12h được khai báo như sau: [print now.strftime("%I:%M:%S %P) ] được khai báo như sau: [print now.strftime("%I:%M:%S %P) ] Định dạng 24h được khai báo như sau: [print now.strftime("%H:%M")] được khai báo như sau: [print now.strftime("%H:%M")] Đây là mã hoàn chỉnh để chuyển đổi datetime thành đối tượng dạng chuỗi.
Cách sử dụng Đối tượng Timedelta Với các đối tượng timedelta, bạn có thể ước tính thời gian cho tương lai và quá khứ. Nói cách khác, đó là một khoảng thời gian để dự đoán bất kỳ ngày, thứ hoặc thời gian nào. Nói cách khác, đó là một khoảng thời gian để dự đoán bất kỳ ngày, thứ hoặc thời gian nào. Hãy nhớ rằng hàm này không phải để in ra thời gian hay ngày tháng, mà là để TÍNH TOÁN trong tương lai hoặc quá khứ. Cùng xem ví dụ sau để hiểu rõ hơn. Cùng xem ví dụ sau để hiểu rõ hơn. Bước 1) Để chạy đối tượng Timedelta, bạn cần khai báo câu lệnh nạp trước đó. Để chạy đối tượng Timedelta, bạn cần khai báo câu lệnh nạp trước đó.
Bạn vẫn thấy thắc mắc? Bước tiếp theo sẽ giúp bạn hiểu rõ hơn. Bước 2) Cùng lấy ra ngày và giờ của ngày hôm nay để kiểm tra xem câu lệnh nạp có chạy đúng hay không. Khi đoạn mã được thực thi, nó sẽ in ra ngày hôm nay, điều đó có nghĩa là câu lệnh nạp đã chạy đúng. Cùng lấy ra ngày và giờ của ngày hôm nay để kiểm tra xem câu lệnh nạp có chạy đúng hay không. Khi đoạn mã được thực thi, nó sẽ in ra ngày hôm nay, điều đó có nghĩa là câu lệnh nạp đã chạy đúng. Bước 3) Chúng ta sẽ xem cách tìm ra ngày này 1 năm sau thông qua đối tượng timedelta. Khi chúng ta chạy đoạn mã này, kết quả sẽ trả về như mong muốn. Chúng ta sẽ xem cách tìm ra ngày này 1 năm sau thông qua đối tượng timedelta. Khi chúng ta chạy đoạn mã này, kết quả sẽ trả về như mong muốn. Bước 4) Một ví dụ khác về cách sử dụng timedelta để tính ngày trong tương lai từ ngày và giờ hiện tại Một ví dụ khác về cách sử dụng timedelta để tính ngày trong tương lai từ ngày và giờ hiện tại Bước 5) Cùng xem một ví dụ phức tạp hơn. Chúng ta cùng tìm xem Tết đã trôi qua được bao nhiêu ngày. Đây là cách làm. Cùng xem một ví dụ phức tạp hơn. Chúng ta cùng tìm xem Tết đã trôi qua được bao nhiêu ngày. Đây là cách làm.
Chương trình in ra "New Year Day already went by 11 days ago." Đây là đoạn mã hoàn chỉnh:
Ví dụ sử dụng Python 2
Tổng kết Để thao tác với ngày và giờ theo cách đơn giản hoặc phức tạp, mô-đun datetime cung cấp các lớp hoặc danh mục khác nhau bao gồm:
Sử dụng đối tượng datetime
Định dạng thời gian in ra với hàm “strftime”
Đối tượng Timedelta
|