Mô-đun DateTime của Python cung cấp nhiều chức năng xử lý thời gian giúp cuộc sống trở nên dễ dàng. Tuy nhiên, không có phương thức trực tiếp nào để trả về biểu diễn bằng tiếng Anh đơn giản của tên ngày trong tuần. May mắn thay, có một số cách dễ dàng để đạt được điều đó
Mục lục hiển thị
- 1 Nhận ngày + Ngày trong tuần
- 2 Phương pháp 1. Thực hiện thủ công
- 2. 1 Ưu điểm.
- 2. 2 Nhược điểm.
- 3 Phương pháp 2. Sử dụng Strftime
- 3. 1 Ưu điểm.
- 3. 2 Nhược điểm.
- 4 Phương pháp 3. Mô-đun Lịch
- 4. 1 Ưu điểm.
- 4. 2 Nhược điểm.
- 5 Suy nghĩ cuối cùng
Nhận ngày + Ngày trong tuần
Trước khi chúng ta xem cách lấy tên ngày trong tuần, hãy xem xét cách lớp datetime
của Python lấy ngày và sau đó, xác định ngày trong tuần cho ngày đã nói. Không có gì lạ mắt về nó—nhưng bạn phải trả tiền để biết mình đang bắt đầu từ đâu
from datetime import datetime # Create datetime object date = datetime.now[] >>> 2021-02-07 15:30:46.665318 # Get the weekday value, as an integer date.weekday[] >>> 6
Đoạn mã này minh họa lớp datetime
sẽ đưa bạn đi được bao xa trước khi bạn phải bắt đầu sáng tạo. Trước khi chúng ta tiếp tục, có hai điều đáng chú ý
- Phương thức
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday
1 gán cho Monday giá trị# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday
2 - Một phương pháp khác,
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday
3, gán cho Sunday giá trị của# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday
4
Kiểm tra ngày giờ chính thức. tài liệu ngày trong tuần để biết thêm thông tin. Bây giờ, khi đã biết cách lấy biểu diễn số nguyên của ngày trong tuần cho một đối tượng datetime
đã cho, chúng ta có thể bắt đầu lập kế hoạch về cách tạo phiên bản tiếng Anh đơn giản. Dưới đây là ba cách tiếp cận được xếp theo thứ tự phụ thuộc
Phương pháp 1. Làm thủ công
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday
Cách tiếp cận này mang lại sự linh hoạt khi có thể điều chỉnh cách đặt tên và đặt hàng ngày trong tuần khi đang di chuyển. Cần phải cắt ngắn tên ngày? . Cần phải bắt đầu với chủ nhật? . Cần đảo ngược danh sách vì một số lý do kỳ lạ?
ưu
- Không có phụ thuộc bổ sung
- Không có phương pháp bổ sung để ghi nhớ
- Linh hoạt để thay đổi
- Đại diện rõ ràng trong mã
Nhược điểm
- gõ nhiều hơn
- Không ngay lập tức chống lại các vấn đề trùng lặp [i. e. sử dụng nó trên một dự án]
- Nỗi sợ lỗi chính tả
Phương pháp 2. Sử dụng Strftime
# Convert the integer to english representation date.date[].strftime["%A"] >>> Sunday
Phương pháp này, được cho là ngắn gọn nhất. Đó là một lớp lót hợp lý, không khác với lớp datetime
và cung cấp một số tính linh hoạt khi đã quen thuộc với tài liệu strftime
ưu
- Không phụ thuộc thêm
- Một lớp lót có thể
- Bán linh hoạt
- Không sợ lỗi chính tả
- Dễ dàng tích hợp toàn dự án
Nhược điểm
- Cần làm quen với
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday
3 để thay đổi định dạng
Phương pháp 3. Mô-đun lịch
import calendar # Convert using calender's day_name method calender.day_name[date.weekday[]] >>> Sunday
Đây thực sự chỉ là một cách đi vòng để đạt được kết quả tương tự như phương pháp đầu tiên. Lợi ích bổ sung ở đây là người khác quản lý danh sách các ngày trong tuần [không thực sự là gánh nặng trong trường hợp này. ] Đối tượng
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday4 chỉ là một danh sách ưa thích của tất cả các tên ngày trong tuần. Lập chỉ mục vào đối tượng này cũng giống như lập chỉ mục vào danh sách thủ công
ưu
- Mô-đun tích hợp
- phụ thuộc nhẹ
- Sử dụng cú pháp Python gốc để lập chỉ mục
Nhược điểm
- Phụ thuộc thêm
- Cú pháp có thể đơn giản hơn
Suy nghĩ cuối cùng
Khi tôi lần đầu tiên học cách viết mã, một trong những điều ngạc nhiên lớn nhất đối với tôi là việc quản lý thời gian và ngày tháng có thể phức tạp đến mức nào. Sự khác biệt tinh tế về độ dài trong tháng, năm nhuận, chuyển đổi
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday5 thành
# Define a list of weekday names days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # Index using weekday int value days[date.weekday[]] >>> Sunday6—có vẻ như đang lội vào tận cùng của một nhiệm vụ ngoại vi như vậy