Tên ngày trong tuần Python

# nhập mô-đun ngày giờ của Python

nhập ngày giờ

# các ngày trong tuần dưới dạng một tuple

weekDays = ("Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy","Chủ Nhật")

# Tìm hiểu xem Giáng sinh năm nay là ngày nào trong tuần

thisXMas    = ngày giờ. ngày(25/12/2017)

thisXMasDay = thisXMas. ngày trong tuần()

thisXMasDayAsString = weekDays[thisXMasDay]

print("Giáng sinh năm nay vào ngày {}". định dạng(thisXMasDayAsString))

# Tìm hiểu xem năm mới tới là ngày nào trong tuần

nextNewYear     = ngày giờ. ngày(2018,1,1)

nextNewYearDay  = nextNewYear. ngày trong tuần()

nextNewYearDayAsString = weekDays[nextNewYearDay]

print("Năm mới tới là ngày {}". định dạng (nextNewYearDayAsString))

Hướng dẫn này giới thiệu cách lấy tên của ngày từ một ngày nhất định. Có nhiều cách để lấy đầu ra, vì vậy hướng dẫn này cũng mô tả một số cách tiếp cận khác nhau để lấy tên trong ngày

Sử dụng phương pháp weekday() để lấy tên trong ngày bằng Python

Trong Python, weekday() có thể được sử dụng để truy xuất ngày trong tuần. Phương thức datetime.today() trả về ngày hiện tại và phương thức này trả về ngày trong tuần dưới dạng số nguyên trong đó Thứ Hai được lập chỉ mục là 0 và Chủ Nhật là 6

Một mã ví dụ của phương pháp này được đưa ra dưới đây

from datetime import datetime

print(datetime.today().weekday())

đầu ra

Sử dụng phương pháp isoweekday() để lấy tên trong ngày bằng Python

Phương thức isoweekday() hoạt động tương tự như phương thức weekday(). Phương pháp này được sử dụng khi Thứ Hai được đánh dấu bằng

from datetime import datetime
print(datetime.today().isoweekday())
2 thay vì
from datetime import datetime
print(datetime.today().isoweekday())
3 như trong weekday()

Dưới đây là ví dụ mã

from datetime import datetime
print(datetime.today().isoweekday())

đầu ra

Đầu ra là 2, tương đương với Thứ Ba là Thứ Hai là 1

Sử dụng Mô-đun from datetime import datetime print(datetime.today().isoweekday()) 5 để lấy tên trong ngày bằng Python

Khi tên của ngày được yêu cầu bằng tiếng Anh trong Python, thư viện

from datetime import datetime
print(datetime.today().isoweekday())
5 có thể được sử dụng. Nó sử dụng phương thức
from datetime import datetime
print(datetime.today().isoweekday())
7 để quản lý một mảng các ngày trong tuần. Trong mảng này, thứ hai được đặt ở chỉ số thứ 0

Một ví dụ về việc sử dụng phương pháp này được đưa ra dưới đây

from datetime import date
import calendar
curr_date = date.today()
print(calendar.day_name[curr_date.weekday()])

đầu ra

Phương thức

from datetime import datetime
print(datetime.today().isoweekday())
8 cũng có thể được sử dụng để lấy tên ngày bằng tiếng Anh trong Python. Phương thức lấy chỉ thị
from datetime import date
import calendar
curr_date = date.today()
print(calendar.day_name[curr_date.weekday()])
0 làm tham số duy nhất trả về tên đầy đủ của ngày trong tuần

Một mã ví dụ của phương pháp này như sau

from datetime import datetime
print(datetime.today().strftime('%A'))

đầu ra

Sử dụng Pandas from datetime import date import calendar curr_date = date.today() print(calendar.day_name[curr_date.weekday()]) 1 Phương pháp để lấy tên trong ngày bằng Python

Pandas

from datetime import date
import calendar
curr_date = date.today()
print(calendar.day_name[curr_date.weekday()])
1 phương pháp hữu ích nếu bạn có ngày ở định dạng chuỗi. Nó lấy ngày ở định dạng
from datetime import date
import calendar
curr_date = date.today()
print(calendar.day_name[curr_date.weekday()])
3 làm tham số và phương thức
from datetime import datetime
print(datetime.today().isoweekday())
7 trả về tên của ngày tương ứng

Lấy ngày trong Python là một nhiệm vụ đơn giản. Tuy nhiên, lấy tên ngày trong tuần (bằng tiếng Anh đơn giản) không đơn giản. May mắn thay, có một số cách tiếp cận đơn giản để trả về tên ngày thân thiện với người dùng

Drawing of a calendar

Ảnh từ Overcoded

Lấy ngày và 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 nó trả tiền để biết bạn đang bắt đầu từ đâu

Đoạn mã này minh họa lớp học datetime sẽ đưa bạn đến đâu 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 weekday gán giá trị 0 cho Thứ Hai
  • Một phương pháp khác, isoweekday, gán giá trị 1 cho Chủ nhật

Xem tài liệu chính thức của datetime.weekday để biết thêm thông tin. Bây giờ chúng ta đã 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

1. Làm thủ công

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à thứ tự các ngày trong tuần một cách nhanh chóng. 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ả

2. Sử dụng Strftime

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à mang lại sự linh hoạt nhất định khi bạn đã quen thuộc với lớp datetime0

ư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

Côn

  • Cần làm quen với datetime1 để thay đổi định dạng

3. Mô-đun lịch

Đây thực sự chỉ là một cách đi đường 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 datetime2 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 từ datetime3 thành datetime4—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

Chuyển đổi các biểu diễn ngày thân thiện với máy tính như dấu thời gian kỷ nguyên thành các biểu diễn thân thiện với người dùng là một nhiệm vụ khó chịu khác. Trong trường hợp này, lớp datetime của Python giúp việc lấy ngày trong tuần làm giá trị số nguyên trở nên đơn giản. Sau đó, tất cả chỉ là đường cú pháp. Cá nhân tôi thích phương pháp thứ hai ở đây hơn vì nó giữ mọi thứ liên kết chặt chẽ với mô-đun datetime6

Định dạng nào sẽ hiển thị ngày trong tuần bằng Python?

Phương thức Python DateTime ngày trong tuần() với ví dụ . MM là viết tắt của Tháng. DD là viết tắt của Ngày. (YYYY, MM, DD, HH, MM, SS)”, where, YYYY stands for year. MM stands for Month. DD stands for Date.

Làm thế nào để Python tính toán các ngày trong tuần?

Lấy số ngày làm việc (các ngày trong tuần) giữa hai ngày mà không bị numpy .
Đầu tiên, lặp lại từ ngày bắt đầu đến ngày kết thúc một ngày bằng cách sử dụng hàm for loop và range()
Sử dụng hàm weekday() để kiểm tra xem ngày đó là ngày trong tuần hay cuối tuần
Nếu đó là một ngày trong tuần, sau đó thêm nó vào số lượng
In số cuối cùng

Cách lấy tên ngày từ gấu trúc ngày?

Hàm day_name() trong pandas trả về tên ngày của một đối tượng Dấu thời gian đã cho . Điều này tương đương với đối tượng datetime của Python.