Hướng dẫn how do i get the start of the week in python? - làm cách nào để bắt đầu một tuần trong python?

day = "13/Oct/2013"
print("Parsing :",day)
day, mon, yr= day.split("/")
sday = yr+" "+day+" "+mon
myday = time.strptime(sday, '%Y %d %b')
Sstart = yr+" "+time.strftime("%U",myday )+" 0"
Send = yr+" "+time.strftime("%U",myday )+" 6"
startweek = time.strptime(Sstart, '%Y %U %w')
endweek = time.strptime(Send, '%Y %U %w')
print("Start of week:",time.strftime("%a, %d %b %Y",startweek))
print("End of week:",time.strftime("%a, %d %b %Y",endweek))
print("Data entered:",time.strftime("%a, %d %b %Y",myday))

out:
Parsing : 13/Oct/2013
Start of week: Sun, 13 Oct 2013
End of week: Sat, 19 Oct 2013
Sun, 13 Oct 2013

Đã học được python trong 2 ngày qua và tự hỏi liệu có cách nào sạch hơn để làm điều này không. Phương pháp này hoạt động ... nó trông thật xấu xí và có vẻ ngớ ngẩn khi phải tạo một biến thời gian mới cho mỗi ngày và nên Hãy là một cách để bù ngày cho đến đầu và cuối tuần thông qua một cuộc gọi đơn giản nhưng tôi không thể tìm thấy bất cứ điều gì trên internet hoặc tài liệu có vẻ như nó sẽ hoạt động.

Hướng dẫn how do i get the start of the week in python? - làm cách nào để bắt đầu một tuần trong python?

thisXmas = dateTime.date (2017,12,25).

ThisXmasDay = thisXmas.weekday ().

Chào các cậu,

Trong Python, chúng ta có thể nhận được ngày bắt đầu và ngày kết thúc của tuần bằng Python. Hãy xem ví dụ dưới đây:

Ví dụ 1 :


# import datetime module

from datetime import datetime, timedelta

day = '27/01/2022'

dt = datetime.strptime(day, '%d/%m/%Y')

start = dt - timedelta(days=dt.weekday())

end = start + timedelta(days=6)

print("Week Start Date:"+str(start))

print("Week End Date:"+str(end))

Đầu ra

Week Start Date:2022-01-24 00:00:00

Week End Date:2022-01-30 00:00:00

Ví dụ 2:

# import datetime module

from datetime import date, timedelta

today = date.today()

start = today - timedelta(days=today.weekday())

end = start + timedelta(days=6)

print("Today: " + str(today))

print("Week Start: " + str(start))

print("Week End: " + str(end))

Đầu ra

Today: 2022-01-28

Week Start: 2022-01-24

Week End: 2022-01-30

Week Start Date:2022-01-24 00:00:00

Week End Date:2022-01-30 00:00:00

#PythonPython

Ví dụ 2:

Trong bài đăng Python này, bạn sẽ học cách in bắt đầu và kết thúc một tuần dựa trên một đối tượng DateTime.print the start and end of a week based on a datetime object.

Hướng dẫn chứa những điều sau đây:

Hãy để nhảy ngay vào ví dụ!

Tạo dữ liệu mẫu mực

Chúng tôi phải nhập mô -đun DateTime, như bạn có thể thấy ở đây:

import datetime                                               # Import datetime module

Tôi sẽ sử dụng các dữ liệu sau làm tầng hầm cho hướng dẫn lập trình Python này:

my_dt = datetime.datetime(2024, 6, 21, 10, 12, 53)         # Creating example datetime
print(my_dt)
# 2024-06-21 10:12:53

Hãy xem đầu ra bảng điều khiển Python trước đó. Nó cho thấy rằng đối tượng DateTime ví dụ của chúng tôi là Thứ Sáu, ngày 21 tháng 6 năm 2024, 10:12:53.

Ví dụ: Nhận bắt đầu và cuối tuần kể từ ngày nhất định

Trong ví dụ này, tôi sẽ minh họa cách tìm ra sự khởi đầu và cuối tuần từ đối tượng DateTime được tạo trước đó của chúng tôi.

Đối với điều này, chúng tôi cũng phải nhập chức năng Timedelta, hãy xem xét mã Python bên dưới:

from datetime import timedelta

Vì chúng tôi chỉ cần các thành phần năm, tháng và ngày để xác định đầu và cuối tuần, chúng tôi trích xuất chúng từ đối tượng DateTime của chúng tôi như bạn có thể thấy ở đây:

my_dt_trunc = datetime.date(my_dt.year,                       # Truncate time component
                            my_dt.month,
                            my_dt.day)
print(my_dt_trunc)
# 2024-06-21

Tiếp theo, chúng ta có thể kết hợp các chức năng thời gian và ngày trong tuần để trả lại ngày bắt đầu của tuần:

start_of_week = my_dt_trunc - timedelta(days = my_dt_trunc.weekday()) # timedelta & weekday
print(start_of_week)                                          # Return Start of Week
# 2024-06-17

Như bạn có thể thấy trên đầu ra ở trên, tuần bắt đầu vào lúc 2024-06-17, tất nhiên đó là một ngày thứ Hai.

Từ đây, chúng ta có thể chỉ cần đến cuối tuần bằng cách thêm thời gian chứa 6 ngày, hãy xem xét cú pháp Python sau:

# import datetime module

from datetime import datetime, timedelta

day = '27/01/2022'

dt = datetime.strptime(day, '%d/%m/%Y')

start = dt - timedelta(days=dt.weekday())

end = start + timedelta(days=6)

print("Week Start Date:"+str(start))

print("Week End Date:"+str(end))

0

Bây giờ chúng tôi cũng có ngày kết thúc của tuần của chúng tôi, trong trường hợp này là 2024-06-23 (Chủ nhật).

Video, Tài nguyên & Tóm tắt

Bạn có muốn biết thêm về việc trích xuất bắt đầu và kết thúc một tuần được đưa ra bởi một đối tượng DateTime không? Sau đó, bạn có thể muốn xem video sau trên kênh YouTube của tôi. Trong video, tôi đã giải thích mã Python của hướng dẫn hiện tại trong một phiên trực tiếp ở Python.

Video YouTube sẽ sớm được thêm vào.

Bên cạnh đó, bạn có thể xem xét một số hướng dẫn khác trên trang web của tôi:

  • Nhận ngày trong tuần từ DateTime trong Python - Số & Tên
  • Nhận số tuần của DateTime trong Python
  • Giới thiệu về Python

Bài đăng này đã minh họa làm thế nào để trả lại sự khởi đầu và kết thúc của một tuần với một đối tượng DateTime trong ngôn ngữ lập trình Python. Trong trường hợp bạn có thêm câu hỏi và/hoặc nhận xét, hãy cho tôi biết về nó trong các ý kiến.return the beginning and end of a week given a datetime object in the Python programming language. In case you have additional questions and/or comments, tell me about it in the comments.

Hướng dẫn how do i get the start of the week in python? - làm cách nào để bắt đầu một tuần trong python?

Trang này được tạo ra với sự hợp tác với Matthias Bäuerlen. Hãy xem trang tác giả Matthias, để có thêm thông tin về nền tảng chuyên môn của anh ấy, một danh sách tất cả các hướng dẫn của anh ấy, cũng như một cái nhìn tổng quan về các nhiệm vụ khác của anh ấy trên toàn cầu thống kê.

Làm thế nào để tôi có được ngày đầu tiên trong tuần ở Python?

Thuật toán (các bước) Sử dụng từ khóa nhập, để nhập mô -đun lịch. Vượt qua số ngày mà bạn muốn nó là ngày đầu tiên như một cuộc tranh luận với lịch. hàm setfirstweekday () (phương thức setFirstWeekDay () đặt ra ngày trong tuần (0 là thứ Hai, 6 là Chủ nhật) mỗi tuần bắt đầu.Use the import keyword, to import the calendar module. Pass the day number on which you want it to be the first Weekday as an argument to the calendar. setfirstweekday() function(The setfirstweekday() method sets the weekday (0 is Monday, 6 is Sunday) on which each week starts.

Làm thế nào để bạn hiển thị tuần trong Python?

isocalendar () [1] Trả về số tuần, dt.isocalendar () [2] trả lại vào ngày tuần. returns the week number, dt. isocalendar()[2] returns the week day.

Làm cách nào để nhận được dữ liệu trong tuần này trong Python?

Ví dụ 1 :..
# Nhập mô -đun DateTime ..
Từ DateTime Nhập DateTime, TimEdelta ..
ngày = '27/01/2022 '.
DT = DateTime.Strptime (ngày, '%d/%m/%y').
start = dt - TimedelTa (ngày = dt. Day ()).
Kết thúc = Bắt đầu + Timedelta (ngày = 6).
In ("Ngày bắt đầu tuần:"+str (bắt đầu)).
In ("Ngày kết thúc tuần:"+str (kết thúc)).

Làm cách nào để sử dụng chức năng trong tuần trong Python?

Example:..
# Nhập mô -đun DateTime của Python ..
Nhập Datetime ..
# các ngày trong tuần như một tuple ..
Các ngày trong tuần = ("Thứ Hai", "Thứ ba", "Thứ Tư", "Thứ Năm", "Thứ Sáu", "Thứ Bảy", "Chủ nhật").
# Tìm hiểu vào ngày nào trong tuần là Giáng sinh năm nay ..
thisXmas = dateTime.date (2017,12,25).
ThisXmasDay = thisXmas.weekday ().