Làm thế nào để bạn có được chủ nhật tiếp theo trong python?
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách chỉ tìm ngày thứ Hai bằng python. Chúng tôi tìm thấy ngày thứ Hai tuần trước, thứ Hai tuần sau, thứ Hai thứ n bằng các phương pháp khác nhau− Show
Phương pháp 1. sử dụng timedeltaThuật toán (Các bước)Sau đây là Thuật toán/các bước cần tuân thủ để thực hiện tác vụ mong muốn -
timedelta()- Python's timedelta() function is available in the datetime library and is typically used to calculate differences between dates. It can also be used to manipulate dates in Python, and this function makes it very simple for users to do so. cú phápDatetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)
Ví dụChương trình sau trả về ngày thứ Hai tiếp theo sử dụng datetime. hàm timedelta()− đầu raKhi thực thi, chương trình trên sẽ tạo đầu ra sau - Today Date: 2022-09-07 Next Monday Date: 2022-09-12 Phương pháp 2. Sử dụng hàm relativedelta() để lấy Thứ Hai tuần trướctimedelta chỉ hỗ trợ ngày (và tuần), trong khi relativedelta cho phép năm, tháng, tuần hoặc ngày cũng như cung cấp các giá trị tuyệt đối cho năm, tháng hoặc ngày Một relativedelta có số lượng tham số lớn hơn nhiều so với timedelta relativedelta.relativedelta(self, dt1=None, dt2=None, years=0, months=0, days=0, leapdays=0, weeks=0, hours=0, minutes=0, seconds=0, microseconds=0, year=None, month=None, day=None, weekday=None, yearday=None, nlyearday=None, hour=None, minute=None, second=None, microsecond=None) Thuật toán (Các bước)Sau đây là Thuật toán/các bước cần tuân thủ để thực hiện tác vụ mong muốn -
Ví dụChương trình sau đây trả về ngày thứ Hai tuần trước bằng cách sử dụng hàm relativedelta()− đầu raToday Date: 2022-09-07 The last Monday date: 2022-09-05 Phương pháp 3. Sử dụng hàm relativedelta() để nhận Thứ Hai tuần sauNó tương tự như phương pháp trước, nhưng lần này chúng ta truyền đối số MO(1) để lấy ngày thứ Hai tiếp theo Ví dụđầu raToday Date: 2022-09-07 The Next Monday date: 2022-09-12 Phương pháp 4. Sử dụng hàm relativedelta() để lấy Thứ Hai của tuần tớiThuật toán (Các bước)Sau đây là Thuật toán/các bước cần tuân thủ để thực hiện tác vụ mong muốn -
Ví dụđầu raToday Date: 2022-09-07 4 th Monday date from today is: 2022-10-03 Phương pháp 5. Sử dụng hàm timedelta() để lấy Thứ Hai thứ n trước đóThuật toán (Các bước)Sau đây là Thuật toán/các bước cần tuân thủ để thực hiện tác vụ mong muốn -
Ví dụđầu raToday Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12 Phần kết luậnTrong bài viết này, chúng ta đã học cách tìm ngày thứ Hai bằng năm ví dụ khác nhau, cũng như cách tìm ngày thứ Hai tiếp theo và trước đó Mặc dù số học ngày và giờ được hỗ trợ, trọng tâm của việc triển khai là trích xuất thuộc tính hiệu quả để định dạng và thao tác đầu ra Xem thêm mô-đunCác chức năng liên quan đến lịch chung mô-đunThời gian truy cập và chuyển đổi mô-đunMúi giờ cụ thể đại diện cho cơ sở dữ liệu múi giờ IANA ngày đóng góiThư viện của bên thứ ba với múi giờ mở rộng và hỗ trợ phân tích cú pháp Đối tượng nhận thức và ngây thơCác đối tượng ngày và giờ có thể được phân loại là "nhận biết" hoặc "ngây thơ" tùy thuộc vào việc chúng có bao gồm thông tin múi giờ hay không Với kiến thức đầy đủ về các điều chỉnh thời gian chính trị và thuật toán hiện hành, chẳng hạn như múi giờ và thông tin về thời gian tiết kiệm ánh sáng ban ngày, một đối tượng nhận biết có thể định vị chính nó so với các đối tượng nhận biết khác. Một đối tượng nhận thức đại diện cho một thời điểm cụ thể không thể giải thích được. Một đối tượng ngây thơ không chứa đủ thông tin để định vị chính nó một cách rõ ràng so với các đối tượng ngày/giờ khác. Việc một đối tượng ngây thơ đại diện cho Giờ phối hợp quốc tế (UTC), giờ địa phương hay thời gian ở một số múi giờ khác hoàn toàn phụ thuộc vào chương trình, giống như việc một số cụ thể đại diện cho mét, dặm hay khối lượng hay không là tùy thuộc vào chương trình. Các đối tượng ngây thơ dễ hiểu và dễ làm việc với cái giá phải trả là bỏ qua một số khía cạnh của thực tế Đối với các ứng dụng yêu cầu các đối tượng nhận biết và các đối tượng có thuộc tính thông tin múi giờ tùy chọn, >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "4, có thể được đặt thành một thể hiện của một lớp con của lớp trừu tượng. Các đối tượng này nắm bắt thông tin về phần bù từ thời gian UTC, tên múi giờ và liệu thời gian tiết kiệm ánh sáng ban ngày có hiệu lực hay không Chỉ có một lớp cụ thể, lớp, được cung cấp bởi mô-đun. Lớp này có thể đại diện cho các múi giờ đơn giản với độ lệch cố định từ UTC, chẳng hạn như chính UTC hoặc các múi giờ EST và EDT của Bắc Mỹ. Hỗ trợ các múi giờ ở mức độ chi tiết sâu hơn tùy thuộc vào ứng dụng. Các quy tắc điều chỉnh thời gian trên toàn thế giới mang tính chính trị hơn là hợp lý, thay đổi thường xuyên và không có tiêu chuẩn nào phù hợp cho mọi ứng dụng ngoài UTC hằng sốMô-đun xuất các hằng số sau ngày giờ. MIN NĂMSố năm nhỏ nhất được phép trong một hoặc đối tượng. là >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.05ngày giờ. TỐI ĐA NĂM Số năm lớn nhất được phép trong một hoặc đối tượng. là >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.09ngày giờ. UTC Bí danh cho múi giờ UTC đơn lẻ Mới trong phiên bản 3. 11 Các loại có sẵnlớp ngày giờ. ngàyMột ngày ngây thơ được lý tưởng hóa, giả sử rằng lịch Gregorian hiện tại luôn có hiệu lực. Thuộc tính. , , và lớp ngày giờ. thời gianThời gian lý tưởng hóa, không phụ thuộc vào bất kỳ ngày cụ thể nào, giả sử rằng mỗi ngày có chính xác 24*60*60 giây. (Không có khái niệm “giây nhuận” ở đây. ) Thuộc tính. , , , , và lớp ngày giờ. ngày giờMột sự kết hợp của một ngày và một thời gian. Thuộc tính. , , , , , , , và lớp ngày giờ. đồng hồ thời gianKhoảng thời gian thể hiện sự khác biệt giữa hai , hoặc phiên bản đối với độ phân giải micro giây lớp ngày giờ. tzinfoMột lớp cơ sở trừu tượng cho các đối tượng thông tin múi giờ. Chúng được sử dụng bởi các lớp và để cung cấp khái niệm điều chỉnh thời gian có thể tùy chỉnh (ví dụ: để tính múi giờ và/hoặc thời gian tiết kiệm ánh sáng ban ngày) lớp ngày giờ. múi giờMột lớp triển khai lớp cơ sở trừu tượng dưới dạng phần bù cố định từ UTC Mới trong phiên bản 3. 2 Các đối tượng của các loại này là bất biến quan hệ phân lớp Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)1 Tài sản chung, , và các loại chia sẻ các tính năng phổ biến này
Xác định xem một đối tượng là Aware hay NaiveCác đối tượng thuộc loại luôn ngây thơ Một đối tượng thuộc loại hoặc có thể nhận thức hoặc ngây thơ Một đối tượng d nhận biết nếu cả hai điều sau đây đều đúng
Mặt khác, d là ngây thơ Một đối tượng t nhận biết nếu cả hai điều sau đây đều đúng
Nếu không, t là ngây thơ Sự khác biệt giữa nhận thức và ngây thơ không áp dụng cho các đối tượng Các đối tượngMột đối tượng đại diện cho một khoảng thời gian, sự khác biệt giữa hai ngày hoặc thời gian lớp ngày giờ. timedelta(ngày=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)Tất cả các đối số là tùy chọn và mặc định là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)214. Các đối số có thể là số nguyên hoặc số float và có thể dương hoặc âm Chỉ ngày, giây và micro giây được lưu trữ nội bộ. Các đối số được chuyển đổi thành các đơn vị đó
và ngày, giây và micro giây sau đó được chuẩn hóa để biểu diễn là duy nhất, với
Ví dụ sau đây minh họa cách mọi đối số ngoài ngày, giây và micro giây được “hợp nhất” và chuẩn hóa thành ba thuộc tính kết quả đó Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)2 Nếu bất kỳ đối số nào là số float và có micro giây phân số, thì micro giây phân số còn lại từ tất cả các đối số sẽ được kết hợp và tổng của chúng được làm tròn đến micro giây gần nhất bằng cách sử dụng bộ ngắt kết nối từ nửa vòng đến chẵn. Nếu không có đối số nào là float, quá trình chuyển đổi và chuẩn hóa là chính xác (không có thông tin nào bị mất) Nếu giá trị chuẩn hóa của ngày nằm ngoài phạm vi được chỉ định, được tăng lên Lưu ý rằng việc chuẩn hóa các giá trị âm lúc đầu có thể gây ngạc nhiên. Ví dụ Today Date: 2022-09-07 Next Monday Date: 2022-09-125 Thuộc tính lớp đồng bằng thời gian. phútĐối tượng tiêu cực nhất, Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)220đồng bằng thời gian. tối đa Đối tượng tích cực nhất, Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)222đồng bằng thời gian. độ phân giải Sự khác biệt nhỏ nhất có thể giữa các đối tượng không bằng nhau, Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)224 Lưu ý rằng, do chuẩn hóa, ________ 1225 > ________ 1226. Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)227 không thể biểu diễn dưới dạng đối tượng Thuộc tính phiên bản (chỉ đọc) Thuộc tính Giá trị Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)229 Giữa -999999999 và bao gồm cả 999999999 Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)230 Bao gồm từ 0 đến 86399 Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)231 Bao gồm từ 0 đến 999999 hoạt động được hỗ trợ Hoạt động Kết quả Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)232 Tổng của t2 và t3. Sau đó t1-t2 == t3 và t1-t3 == t2 là đúng. (1) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)233 Sự khác biệt của t2 và t3. Sau đó t1 == t2 - t3 và t2 == t1 + t3 là đúng. (1)(6) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)234 Delta nhân với một số nguyên. Sau đó t1 // i == t2 là đúng, với điều kiện là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)235 Nói chung, t1 * i == t1 * (i-1) + t1 là đúng. (1) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)236 Delta nhân với một số float. Kết quả được làm tròn đến bội số gần nhất của timedelta. độ phân giải sử dụng nửa vòng đến chẵn Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)237 Chia (3) tổng thời lượng t2 cho đơn vị khoảng thời gian t3. Trả về một đối tượng Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)239 Delta chia cho float hoặc int. Kết quả được làm tròn đến bội số gần nhất của timedelta. độ phân giải sử dụng nửa vòng đến chẵn Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)240 hoặc Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)241 Sàn được tính và phần còn lại (nếu có) bị vứt đi. Trong trường hợp thứ hai, một số nguyên được trả về. (3) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)242 Phần còn lại được tính như một đối tượng. (3) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)244 Tính thương và số dư. Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)245 (3) và Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)246. q là một số nguyên và r là một đối tượng Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)248 Trả về một đối tượng có cùng giá trị. (2) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)250 tương đương với (-t1. ngày, -t1. giây, -t1. micro giây) và đến t1* -1. (1)(4) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)252 tương đương với +t khi Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)253 và -t khi Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)254. (2) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)255 Trả về một chuỗi ở dạng Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)256, trong đó D là âm cho Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)257 âm. (5) Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)258 Trả về một biểu diễn chuỗi của đối tượng dưới dạng lệnh gọi hàm tạo với các giá trị thuộc tính chuẩn ghi chú
Ngoài các hoạt động được liệt kê ở trên, các đối tượng hỗ trợ một số phép cộng và phép trừ với và đối tượng (xem bên dưới) Đã thay đổi trong phiên bản 3. 2. Phép chia tầng và phép chia thực sự của một đối tượng cho một đối tượng khác hiện đã được hỗ trợ, cũng như các phép toán còn lại và hàm. Phép chia thực sự và phép nhân của một đối tượng với một đối tượng hiện được hỗ trợ. So sánh các đối tượng được hỗ trợ, với một số lưu ý Các phép so sánh Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)275 hoặc Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)276 luôn trả về a , bất kể loại đối tượng được so sánh Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-033 Đối với tất cả các so sánh khác (chẳng hạn như Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)278 và Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)279), khi một đối tượng được so sánh với một đối tượng thuộc loại khác, sẽ được nâng lên ________số 8 Trong ngữ cảnh Boolean, một đối tượng được coi là đúng khi và chỉ khi nó không bằng Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)283 Phương thức sơ thẩm đồng bằng thời gian. total_seconds()Trả về tổng số giây có trong khoảng thời gian. Tương đương với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)284. Đối với các đơn vị khoảng thời gian khác với giây, hãy sử dụng biểu mẫu chia trực tiếp (e. g. Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)285) Lưu ý rằng trong khoảng thời gian rất lớn (hơn 270 năm trên hầu hết các nền tảng), phương pháp này sẽ mất độ chính xác micro giây Mới trong phiên bản 3. 2 Ví dụ về cách sử dụng.Một ví dụ bổ sung về chuẩn hóa >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.0 Ví dụ về số học Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-121 Các đối tượngMột đối tượng đại diện cho một ngày (năm, tháng và ngày) trong lịch lý tưởng hóa, lịch Gregorian hiện tại được mở rộng vô thời hạn theo cả hai hướng Ngày 1 tháng 1 của năm 1 được gọi là ngày 1, ngày 2 tháng 1 của năm 1 được gọi là ngày 2, v.v. lớp ngày giờ. ngày(năm , tháng, day)Tất cả các đối số là bắt buộc. Các đối số phải là số nguyên, trong các phạm vi sau
Nếu một đối số bên ngoài các phạm vi được đưa ra, được nâng lên Các hàm tạo khác, tất cả các phương thức của lớp phương thức lớp ngày. hôm nay()Trả về ngày địa phương hiện tại Điều này tương đương với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)294phương thức lớp ngày. dấu thời gian từ(dấu thời gian) Trả về ngày địa phương tương ứng với dấu thời gian POSIX, chẳng hạn như được trả về bởi Điều này có thể tăng , nếu dấu thời gian nằm ngoài phạm vi giá trị được hỗ trợ bởi hàm Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 của nền tảng C và khi lỗi Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297. Điều này thường bị giới hạn trong các năm từ 1970 đến 2038. Lưu ý rằng trên các hệ thống không phải POSIX bao gồm các giây nhuận trong khái niệm dấu thời gian, các giây nhuận bị bỏ qua bởi Đã thay đổi trong phiên bản 3. 3. Tăng thay vì nếu dấu thời gian nằm ngoài phạm vi giá trị được hàm Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 nền tảng hỗ trợ. Tăng thay vì trên Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 thất bại. phương thức lớp ngày. từ thứ tự(thứ tự) Trả về ngày tương ứng với thứ tự Gregorian proleptic, trong đó ngày 1 tháng 1 của năm 1 có thứ tự 1 được nâng lên trừ khi Today Date: 2022-09-07 Next Monday Date: 2022-09-12508. Đối với bất kỳ ngày d, Today Date: 2022-09-07 Next Monday Date: 2022-09-12509phương thức lớp ngày. fromisoformat(date_string) Trả về một tương ứng với một chuỗi_ngày được cung cấp ở bất kỳ định dạng ISO 8601 hợp lệ nào, ngoại trừ các ngày thứ tự (e. g. Today Date: 2022-09-07 Next Monday Date: 2022-09-12511) >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "3 Mới trong phiên bản 3. 7 Đã thay đổi trong phiên bản 3. 11. Trước đây, phương thức này chỉ hỗ trợ định dạng Today Date: 2022-09-07 Next Monday Date: 2022-09-12512. phương thức lớp ngày. từ dương lịch(năm , tuần, day) Trả về một tương ứng với ngày theo lịch ISO được chỉ định theo năm, tuần và ngày. Đây là nghịch đảo của hàm Mới trong phiên bản 3. 8 Thuộc tính lớp ngày. phútNgày đại diện sớm nhất, Today Date: 2022-09-07 Next Monday Date: 2022-09-12515ngày. tối đa Ngày đại diện mới nhất, Today Date: 2022-09-07 Next Monday Date: 2022-09-12516ngày. độ phân giải Sự khác biệt nhỏ nhất có thể giữa các đối tượng ngày không bằng nhau, Today Date: 2022-09-07 Next Monday Date: 2022-09-12517 Thuộc tính phiên bản (chỉ đọc) ngày. nămGiữa và bao gồm ngày. thángTừ 1 đến 12 bao gồm ngày. ngàyGiữa 1 và số ngày trong tháng nhất định của năm nhất định hoạt động được hỗ trợ Hoạt động Kết quả Today Date: 2022-09-07 Next Monday Date: 2022-09-12520 date2 sẽ là Today Date: 2022-09-07 Next Monday Date: 2022-09-12521 ngày sau date1. (1) Today Date: 2022-09-07 Next Monday Date: 2022-09-12522 Tính date2 sao cho Today Date: 2022-09-07 Next Monday Date: 2022-09-12523. (2) Today Date: 2022-09-07 Next Monday Date: 2022-09-12524 (3) Today Date: 2022-09-07 Next Monday Date: 2022-09-12525 date1 được coi là nhỏ hơn date2 khi date1 trước date2 về thời gian. (4) ghi chú
Trong ngữ cảnh Boolean, tất cả các đối tượng được coi là đúng Phương thức sơ thẩm ngày. thay thế(năm=chính mình. năm , tháng=chính mình. tháng , ngày=chính mình. ngày)Trả về một ngày có cùng giá trị, ngoại trừ các tham số được cung cấp giá trị mới theo bất kỳ đối số từ khóa nào được chỉ định Ví dụ Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)08ngày. thời gian() Trả lại một chẳng hạn như được trả lại bởi Giờ, phút và giây là 0 và cờ DST là -1 Today Date: 2022-09-07 Next Monday Date: 2022-09-12552 tương đương với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)20 trong đó Today Date: 2022-09-07 Next Monday Date: 2022-09-12553 là số ngày trong năm hiện tại bắt đầu bằng >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.05 cho ngày 1 tháng 1ngày. bình thường() Trả về thứ tự Gregorian proleptic của ngày, trong đó ngày 1 tháng 1 của năm 1 có thứ tự 1. Đối với bất kỳ đối tượng d, Today Date: 2022-09-07 Next Monday Date: 2022-09-12509ngày. ngày trong tuần() Trả về ngày trong tuần dưới dạng số nguyên, trong đó Thứ Hai là 0 và Chủ Nhật là 6. Ví dụ: Today Date: 2022-09-07 Next Monday Date: 2022-09-12557, Thứ Tư. Xem thêmngày. ngày trong tuần() Trả về ngày trong tuần dưới dạng số nguyên, trong đó Thứ Hai là 1 và Chủ Nhật là 7. Ví dụ: Today Date: 2022-09-07 Next Monday Date: 2022-09-12559, Thứ Tư. Xem thêm ,ngày. isocalendar() Trả về một đối tượng có ba thành phần. Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-1211, Today Date: 2022-09-07 Next Monday Date: 2022-09-12563 và Today Date: 2022-09-07 Next Monday Date: 2022-09-12564 Lịch ISO là một biến thể được sử dụng rộng rãi của lịch Gregorian. Năm ISO bao gồm 52 hoặc 53 tuần đầy đủ và trong đó một tuần bắt đầu vào Thứ Hai và kết thúc vào Chủ nhật. Tuần đầu tiên của một năm ISO là tuần dương lịch (Gregorian) đầu tiên của một năm có ngày thứ Năm. Đây được gọi là tuần số 1 và năm ISO của ngày thứ Năm đó giống với năm Gregorian của nó Ví dụ: năm 2004 bắt đầu vào Thứ Năm, vì vậy tuần đầu tiên của năm ISO 2004 bắt đầu vào Thứ Hai, ngày 29 tháng 12 năm 2003 và kết thúc vào Chủ Nhật, ngày 4 tháng 1 năm 2004 Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)21 Đã thay đổi trong phiên bản 3. 9. Kết quả đã thay đổi từ một bộ thành một. ngày. isoformat()Trả về một chuỗi đại diện cho ngày ở định dạng ISO 8601, Today Date: 2022-09-07 Next Monday Date: 2022-09-12512 Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)22ngày. __str__() Đối với một ngày d, Today Date: 2022-09-07 Next Monday Date: 2022-09-12566 tương đương với Today Date: 2022-09-07 Next Monday Date: 2022-09-12567ngày. thời gian() Trả về một chuỗi đại diện cho ngày Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)23 Today Date: 2022-09-07 Next Monday Date: 2022-09-12568 tương đương với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)24 trên các nền tảng có chức năng C Today Date: 2022-09-07 Next Monday Date: 2022-09-12569 gốc (có thể gọi nhưng không gọi) tuân theo tiêu chuẩn Cngày. thời gian chạy(định dạng) Trả về một chuỗi đại diện cho ngày, được kiểm soát bởi một chuỗi định dạng rõ ràng. Mã định dạng đề cập đến giờ, phút hoặc giây sẽ thấy 0 giá trị. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem ngày. __format__(định dạng)Giống như. Điều này giúp có thể chỉ định một chuỗi định dạng cho một đối tượng trong và khi sử dụng. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem Ví dụ về cách sử dụng.Ví dụ về đếm số ngày đến một sự kiện Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)25 Thêm ví dụ về làm việc với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)26 Các đối tượngMột đối tượng là một đối tượng duy nhất chứa tất cả thông tin từ một đối tượng và một đối tượng Giống như một đối tượng, giả sử lịch Gregorian hiện tại được mở rộng theo cả hai hướng; Người xây dựng lớp ngày giờ. ngày giờ(năm , tháng, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)Các đối số năm, tháng và ngày là bắt buộc. tzinfo có thể là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một thể hiện của lớp con. Các đối số còn lại phải là số nguyên trong các phạm vi sau
Nếu một đối số bên ngoài các phạm vi được đưa ra, được nâng lên Mới trong phiên bản 3. 6. Đã thêm đối số Today Date: 2022-09-07 Next Monday Date: 2022-09-12596. Các hàm tạo khác, tất cả các phương thức của lớp phương thức lớp ngày giờ. hôm nay()Trả về thời gian địa phương hiện tại, với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 Tương đương với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)27 Xem thêm , Phương thức này có chức năng tương đương với , nhưng không có tham số Today Date: 2022-09-07 The Next Monday date: 2022-09-12702phương thức lớp ngày giờ. bây giờ(tz=Không) Trả về ngày và giờ địa phương hiện tại Nếu đối số tùy chọn tz là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc không được chỉ định, thì điều này giống như , nhưng, nếu có thể, cung cấp độ chính xác cao hơn mức có thể nhận được từ việc xem xét dấu thời gian (ví dụ: điều này có thể thực hiện được trên các nền tảng cung cấp hàm C Today Date: 2022-09-07 The Next Monday date: 2022-09-12706) Nếu tz không phải là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, thì nó phải là một thể hiện của một lớp con và ngày giờ hiện tại được chuyển đổi thành múi giờ của tz Chức năng này được ưa thích hơn và phương thức lớp ngày giờ. utcnow()Trả về ngày và giờ UTC hiện tại, với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 Điều này giống như, nhưng trả về ngày và giờ UTC hiện tại, dưới dạng một đối tượng ngây thơ. Có thể nhận được thời gian UTC hiện tại đã biết bằng cách gọi Today Date: 2022-09-07 The Next Monday date: 2022-09-12715. Xem thêm Cảnh báo Bởi vì các đối tượng Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0337 ngây thơ được nhiều phương thức Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0337 coi là giờ địa phương, nên sử dụng thời gian nhận thức để biểu thị thời gian trong UTC. Như vậy, cách được khuyến nghị để tạo một đối tượng biểu thị thời gian hiện tại theo UTC là gọi số Today Date: 2022-09-07 The Next Monday date: 2022-09-12715phương thức lớp ngày giờ. dấu thời gian từ(dấu thời gian , tz=None) Trả về ngày và giờ cục bộ tương ứng với dấu thời gian POSIX, chẳng hạn như được trả về bởi. Nếu đối số tùy chọn tz là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc không được chỉ định, thì dấu thời gian được chuyển đổi thành ngày giờ địa phương của nền tảng và đối tượng được trả về là ngây thơ Nếu tz không phải là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nó phải là một thể hiện của một lớp con và dấu thời gian được chuyển đổi thành múi giờ của tz có thể tăng , nếu dấu thời gian nằm ngoài phạm vi giá trị được hỗ trợ bởi các hàm C Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 hoặc Today Date: 2022-09-07 The Next Monday date: 2022-09-12728 của nền tảng và khi lỗi Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 hoặc Today Date: 2022-09-07 The Next Monday date: 2022-09-12728. Điều này thường bị giới hạn trong các năm từ 1970 đến 2038. Lưu ý rằng trên các hệ thống không phải POSIX bao gồm giây nhuận trong khái niệm dấu thời gian, giây nhuận bị bỏ qua bởi , và sau đó có thể có hai dấu thời gian khác nhau một giây tạo ra các đối tượng giống hệt nhau. Phương pháp này được ưa chuộng hơn Đã thay đổi trong phiên bản 3. 3. Tăng thay vì nếu dấu thời gian nằm ngoài phạm vi giá trị được hỗ trợ bởi các hàm C Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 hoặc Today Date: 2022-09-07 The Next Monday date: 2022-09-12728 của nền tảng. Tăng thay vì khi thất bại Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)297 hoặc Today Date: 2022-09-07 The Next Monday date: 2022-09-12728. Đã thay đổi trong phiên bản 3. 6. có thể trả về các trường hợp được đặt thành 1. phương thức lớp ngày giờ. utcfromtimestamp(dấu thời gian)Trả lại UTC tương ứng với dấu thời gian POSIX, với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203. (Đối tượng kết quả là ngây thơ. ) Điều này có thể tăng , nếu dấu thời gian nằm ngoài phạm vi giá trị được hỗ trợ bởi hàm Today Date: 2022-09-07 The Next Monday date: 2022-09-12728 của nền tảng C và khi lỗi Today Date: 2022-09-07 The Next Monday date: 2022-09-12728. Điều này thường bị giới hạn trong các năm từ 1970 đến 2038 Để có được một đối tượng nhận thức, hãy gọi Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)28 Trên nền tảng tuân thủ POSIX, nó tương đương với biểu thức sau Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)29 ngoại trừ công thức sau luôn hỗ trợ phạm vi năm đầy đủ. giữa và bao gồm Cảnh báo Bởi vì các đối tượng Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0337 ngây thơ được nhiều phương thức Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0337 coi là giờ địa phương, nên sử dụng thời gian nhận thức để biểu thị thời gian trong UTC. Do đó, cách được đề xuất để tạo một đối tượng đại diện cho một dấu thời gian cụ thể trong UTC là gọi số Today Date: 2022-09-07 The Next Monday date: 2022-09-12758 Đã thay đổi trong phiên bản 3. 3. Tăng thay vì nếu dấu thời gian nằm ngoài phạm vi giá trị được hàm Today Date: 2022-09-07 The Next Monday date: 2022-09-12728 của nền tảng C hỗ trợ. Tăng thay vì trên Today Date: 2022-09-07 The Next Monday date: 2022-09-12728 thất bại. phương thức lớp ngày giờ. từ thứ tự(thứ tự) Trả về tương ứng với thứ tự Gregorian proleptic, trong đó ngày 1 tháng 1 của năm 1 có thứ tự 1. được nâng lên trừ khi Today Date: 2022-09-07 The Next Monday date: 2022-09-12767. Giờ, phút, giây và micro giây của kết quả đều bằng 0 và là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203phương thức lớp ngày giờ. kết hợp(ngày , thời gian . tzinfo, tzinfo=self.tzinfo) Trả về một đối tượng mới có các thành phần ngày bằng với đối tượng đã cho và có thành phần thời gian bằng với đối tượng đã cho. Nếu đối số tzinfo được cung cấp, giá trị của nó được sử dụng để đặt thuộc tính của kết quả, nếu không thì thuộc tính của đối số thời gian được sử dụng Đối với bất kỳ đối tượng d, Today Date: 2022-09-07 The Next Monday date: 2022-09-12776. Nếu ngày là một đối tượng, các thành phần và thuộc tính thời gian của nó sẽ bị bỏ qua Đã thay đổi trong phiên bản 3. 6. Đã thêm đối số tzinfo. phương thức lớp ngày giờ. fromisoformat(date_string)Trả về một tương ứng với một chuỗi ngày ở bất kỳ định dạng ISO 8601 hợp lệ nào, với các ngoại lệ sau
ví dụ Today Date: 2022-09-07 Next Monday Date: 2022-09-1250 Mới trong phiên bản 3. 7 Đã thay đổi trong phiên bản 3. 11. Trước đây, phương pháp này chỉ hỗ trợ các định dạng có thể được phát ra bởi hoặc. phương thức lớp ngày giờ. từ dương lịch(năm , tuần, day)Trả về một tương ứng với ngày theo lịch ISO được chỉ định theo năm, tuần và ngày. Các thành phần không phải ngày tháng của ngày giờ được điền bằng các giá trị mặc định bình thường của chúng. Đây là nghịch đảo của hàm Mới trong phiên bản 3. 8 phương thức lớp ngày giờ. strptime(date_string , định dạng)Trả về tương ứng với date_string, được phân tích cú pháp theo định dạng Điều này tương đương với Today Date: 2022-09-07 Next Monday Date: 2022-09-1251 được nâng lên nếu không thể phân tích cú pháp chuỗi ngày và định dạng hoặc nếu nó trả về một giá trị không phải là bộ thời gian. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem Thuộc tính lớp ngày giờ. phútĐại diện sớm nhất , Today Date: 2022-09-07 The Next Monday date: 2022-09-12789ngày giờ. tối đa Đại diện mới nhất , Today Date: 2022-09-07 The Next Monday date: 2022-09-12791ngày giờ. độ phân giải Sự khác biệt nhỏ nhất có thể giữa các đối tượng không bằng nhau, Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)224 Thuộc tính phiên bản (chỉ đọc) ngày giờ. nămGiữa và bao gồm ngày giờ. thángTừ 1 đến 12 bao gồm ngày giờ. ngàyGiữa 1 và số ngày trong tháng nhất định của năm nhất định ngày giờ. giờTrong Today Date: 2022-09-07 The Next Monday date: 2022-09-12796ngày giờ. phút Trong Today Date: 2022-09-07 The Next Monday date: 2022-09-12797ngày giờ. giây Trong Today Date: 2022-09-07 The Next Monday date: 2022-09-12797ngày giờ. micro giây Trong Today Date: 2022-09-07 The Next Monday date: 2022-09-12799ngày giờ. tzinfo Đối tượng được truyền dưới dạng đối số tzinfo cho hàm tạo hoặc Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 nếu không có đối số nào được truyềnngày giờ. gấp Trong Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03302. Được sử dụng để phân biệt thời gian tường trong một khoảng thời gian lặp lại. (Một khoảng thời gian lặp lại xảy ra khi đồng hồ được lùi lại vào cuối giờ tiết kiệm ánh sáng ban ngày hoặc khi độ lệch UTC cho vùng hiện tại bị giảm vì lý do chính trị. ) Giá trị 0 (1) thể hiện sớm hơn (muộn hơn) của hai thời điểm có cùng biểu diễn thời gian tường Mới trong phiên bản 3. 6 hoạt động được hỗ trợ Hoạt động Kết quả Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03303 (1) Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03304 (2) Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03305 (3) Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03306 So sánh với. (4)
Phương thức sơ thẩm ngày giờ. ngày()Trả về đối tượng có cùng năm, tháng và ngày ngày giờ. thời gian()Trả về đối tượng có cùng giờ, phút, giây, micro giây và lần. là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203. Xem thêm phương pháp Đã thay đổi trong phiên bản 3. 6. Giá trị của màn hình đầu tiên được sao chép vào đối tượng được trả về. ngày giờ. timetz()Trả về đối tượng có cùng thuộc tính giờ, phút, giây, micro giây, nếp gấp và tzinfo. Xem thêm phương pháp Đã thay đổi trong phiên bản 3. 6. Giá trị của màn hình đầu tiên được sao chép vào đối tượng được trả về. ngày giờ. thay thế(năm=chính mình. năm , tháng=mình. tháng , ngày=chính mình. ngày , giờ=chính mình. giờ , phút=chính mình. phút , giây=chính mình. giây , micro giây=chính mình. micro giây , tzinfo=self. tzinfo , * , gấp=0)Trả về một ngày giờ có cùng thuộc tính, ngoại trừ những thuộc tính được cung cấp giá trị mới theo bất kỳ đối số từ khóa nào được chỉ định. Lưu ý rằng có thể chỉ định Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03352 để tạo một ngày giờ ngây thơ từ một ngày giờ nhận thức mà không cần chuyển đổi dữ liệu ngày và giờ Mới trong phiên bản 3. 6. Đã thêm đối số Today Date: 2022-09-07 Next Monday Date: 2022-09-12596. ngày giờ. múi giờ(tz=Không có) Trả về một đối tượng có thuộc tính mới tz, điều chỉnh dữ liệu ngày và giờ để kết quả có cùng thời gian UTC với chính nó, nhưng theo giờ địa phương của tz Nếu được cung cấp, tz phải là một thể hiện của một lớp con và các phương thức and của nó không được trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203. Nếu bản thân là ngây thơ, nó được coi là đại diện cho thời gian trong múi giờ hệ thống Nếu được gọi mà không có đối số (hoặc với Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03360), múi giờ cục bộ của hệ thống được giả định cho múi giờ đích. Thuộc tính Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03361 của phiên bản datetime đã chuyển đổi sẽ được đặt thành phiên bản có tên vùng và phần bù thu được từ HĐH Nếu Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03363 là tz, thì Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03364 là tự. không thực hiện điều chỉnh dữ liệu ngày hoặc giờ. Mặt khác, kết quả là giờ địa phương trong múi giờ tz, biểu thị cùng thời gian UTC với chính mình. sau Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03365, Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03366 sẽ có cùng dữ liệu ngày và giờ như Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03367 Nếu bạn chỉ muốn đính kèm một đối tượng múi giờ tz vào một datetime dt mà không cần điều chỉnh dữ liệu ngày và giờ, hãy sử dụng Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03368. Nếu bạn chỉ muốn xóa đối tượng múi giờ khỏi dt datetime nhận biết mà không chuyển đổi dữ liệu ngày và giờ, hãy sử dụng Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03369 Lưu ý rằng phương thức mặc định có thể được ghi đè trong một lớp con để ảnh hưởng đến kết quả được trả về bởi. Bỏ qua các trường hợp lỗi, hoạt động như Today Date: 2022-09-07 Next Monday Date: 2022-09-1252 Đã thay đổi trong phiên bản 3. 3. tz bây giờ có thể được bỏ qua. Đã thay đổi trong phiên bản 3. 6. Phương thức hiện có thể được gọi trên các phiên bản ngây thơ được cho là đại diện cho giờ địa phương của hệ thống. ngày giờ. utcoffset()Nếu là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nếu không thì trả về Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03378 và đưa ra một ngoại lệ nếu cái sau không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một đối tượng có cường độ nhỏ hơn một ngày Đã thay đổi trong phiên bản 3. 7. Phần bù UTC không bị giới hạn trong một số nguyên của phút. ngày giờ. dst()Nếu là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nếu không thì trả về Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03384 và đưa ra một ngoại lệ nếu cái sau không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một đối tượng có cường độ nhỏ hơn một ngày Đã thay đổi trong phiên bản 3. 7. DST offset không bị giới hạn trong một số phút. ngày giờ. tzname()Nếu là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nếu không thì trả về Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03390, đưa ra một ngoại lệ nếu cái sau không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một đối tượng chuỗi,ngày giờ. thời gian() Trả lại một chẳng hạn như được trả lại bởi Today Date: 2022-09-07 Next Monday Date: 2022-09-12552 tương đương với Today Date: 2022-09-07 Next Monday Date: 2022-09-1253 trong đó Today Date: 2022-09-07 Next Monday Date: 2022-09-12553 là số ngày trong năm hiện tại bắt đầu bằng >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.05 cho ngày 1 tháng 1. Cờ Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03397 của kết quả được đặt theo phương thức. là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03397 được đặt thành >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "04; ngày giờ. utctimetuple() Nếu trường hợp d là ngây thơ, thì trường hợp này giống với Today Date: 2022-09-07 Next Monday Date: 2022-09-12552 ngoại trừ việc Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03397 bị buộc về 0 bất kể điều gì mà >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "13 trả về. DST không bao giờ có hiệu lực trong thời gian UTC Nếu d biết, d được chuẩn hóa thành thời gian UTC, bằng cách trừ đi >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "14 và a cho thời gian chuẩn hóa được trả về. Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03397 bị buộc thành 0. Lưu ý rằng an có thể tăng nếu d. năm là >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.04 hoặc >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.08 và điều chỉnh UTC vượt qua ranh giới năm Cảnh báo Bởi vì các đối tượng Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0337 ngây thơ được nhiều phương pháp Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0337 coi là giờ địa phương, nên sử dụng thời gian nhận biết để biểu thị thời gian trong UTC; . Nếu bạn có một ________ 637 ngây thơ đại diện cho UTC, hãy sử dụng ________ 824 để làm cho nó biết, tại thời điểm đó bạn có thể sử dụngngày giờ. bình thường() Trả về thứ tự Gregorian proleptic của ngày. Giống như >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "26ngày giờ. dấu thời gian() Trả về dấu thời gian POSIX tương ứng với phiên bản. Giá trị trả về tương tự như giá trị được trả về bởi Các phiên bản ngây thơ được giả định là đại diện cho giờ địa phương và phương pháp này dựa vào hàm C >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "31 của nền tảng để thực hiện chuyển đổi. Vì hỗ trợ phạm vi giá trị rộng hơn so với >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "31 trên nhiều nền tảng, phương pháp này có thể tăng trong thời gian xa trong quá khứ hoặc xa trong tương lai Đối với các trường hợp nhận biết, giá trị trả về được tính là Today Date: 2022-09-07 Next Monday Date: 2022-09-1254 Mới trong phiên bản 3. 3 Đã thay đổi trong phiên bản 3. 6. Phương thức sử dụng thuộc tính để phân biệt thời gian trong một khoảng thời gian lặp lại. Ghi chú Không có phương pháp nào để lấy dấu thời gian POSIX trực tiếp từ một phiên bản ngây thơ biểu thị thời gian UTC. Nếu ứng dụng của bạn sử dụng quy ước này và múi giờ hệ thống của bạn không được đặt thành UTC, bạn có thể lấy dấu thời gian POSIX bằng cách cung cấp >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "39 Today Date: 2022-09-07 Next Monday Date: 2022-09-1255 hoặc bằng cách tính toán dấu thời gian trực tiếp Today Date: 2022-09-07 Next Monday Date: 2022-09-1256ngày giờ. ngày trong tuần() Trả về ngày trong tuần dưới dạng số nguyên, trong đó Thứ Hai là 0 và Chủ nhật là 6. Giống như >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "40. Xem thêmngày giờ. ngày trong tuần() Trả về ngày trong tuần dưới dạng số nguyên, trong đó Thứ Hai là 1 và Chủ nhật là 7. Giống như >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "42. Xem thêm ,ngày giờ. isocalendar() Trả về a với ba thành phần. Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-1211, Today Date: 2022-09-07 Next Monday Date: 2022-09-12563 và Today Date: 2022-09-07 Next Monday Date: 2022-09-12564. Giống như >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "48ngày giờ. isoformat(sep=', timespec='auto') Trả về một chuỗi biểu thị ngày và giờ ở định dạng ISO 8601
Nếu không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, một chuỗi sẽ được thêm vào, tạo ra phần bù UTC
ví dụ Today Date: 2022-09-07 Next Monday Date: 2022-09-1257 Đối số tùy chọn sep (mặc định là >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "59) là dấu tách một ký tự, được đặt giữa phần ngày và giờ của kết quả. Ví dụ Today Date: 2022-09-07 Next Monday Date: 2022-09-1258 Đối số tùy chọn timespec chỉ định số lượng thành phần bổ sung của thời gian cần đưa vào (mặc định là >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "60). Nó có thể là một trong những điều sau đây
Ghi chú Các thành phần thời gian bị loại trừ bị cắt bớt, không được làm tròn sẽ được nâng lên trên một đối số timespec không hợp lệ Today Date: 2022-09-07 Next Monday Date: 2022-09-1259 Mới trong phiên bản 3. 6. Đã thêm đối số thông số thời gian. ngày giờ. __str__()Ví dụ d, Today Date: 2022-09-07 Next Monday Date: 2022-09-12566 tương đương với >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "84ngày giờ. thời gian() Trả về một chuỗi đại diện cho ngày và giờ Today Date: 2022-09-07 The Next Monday date: 2022-09-1270 Chuỗi đầu ra sẽ không bao gồm thông tin múi giờ, bất kể đầu vào là nhận biết hay ngây thơ Today Date: 2022-09-07 Next Monday Date: 2022-09-12568 tương đương với Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)24 trên các nền tảng có chức năng C Today Date: 2022-09-07 Next Monday Date: 2022-09-12569 gốc (có thể gọi nhưng không gọi) tuân theo tiêu chuẩn Cngày giờ. thời gian chạy(định dạng) Trả về một chuỗi đại diện cho ngày và giờ, được kiểm soát bởi một chuỗi định dạng rõ ràng. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem ngày giờ. __format__(định dạng)Giống như. Điều này giúp có thể chỉ định một chuỗi định dạng cho một đối tượng trong và khi sử dụng. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem Ví dụ về cách sử dụng.Ví dụ về làm việc với các đối tượng Today Date: 2022-09-07 The Next Monday date: 2022-09-1272 Ví dụ bên dưới định nghĩa một lớp con thu thập thông tin múi giờ cho Kabul, Afghanistan, sử dụng +4 UTC cho đến năm 1945 và sau đó là +4. 30 UTC sau đó Today Date: 2022-09-07 The Next Monday date: 2022-09-1273 Cách sử dụng của >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "95 từ phía trên Today Date: 2022-09-07 The Next Monday date: 2022-09-1274 Các đối tượngMột đối tượng đại diện cho thời gian (cục bộ) trong ngày, không phụ thuộc vào bất kỳ ngày cụ thể nào và có thể điều chỉnh thông qua một đối tượng lớp ngày giờ. thời gian(giờ=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)Tất cả các đối số là tùy chọn. tzinfo có thể là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một thể hiện của lớp con. Các đối số còn lại phải là số nguyên trong các phạm vi sau
Nếu một đối số bên ngoài các phạm vi được đưa ra, được nâng lên. Tất cả mặc định là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)214 ngoại trừ tzinfo, mặc định là Thuộc tính lớp thời gian. phútĐại diện sớm nhất, >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.010thời gian. tối đa Đại diện mới nhất , >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.012thời gian. độ phân giải Sự khác biệt nhỏ nhất có thể có giữa các đối tượng không bằng nhau, Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)224, mặc dù lưu ý rằng số học trên các đối tượng không được hỗ trợ Thuộc tính phiên bản (chỉ đọc) thời gian. giờTrong Today Date: 2022-09-07 The Next Monday date: 2022-09-12796thời gian. phút Trong Today Date: 2022-09-07 The Next Monday date: 2022-09-12797thời gian. giây Trong Today Date: 2022-09-07 The Next Monday date: 2022-09-12797thời gian. micro giây Trong Today Date: 2022-09-07 The Next Monday date: 2022-09-12799thời gian. tzinfo Đối tượng được truyền dưới dạng đối số tzinfo cho hàm tạo hoặc Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 nếu không có đối số nào được truyềnthời gian. gấp Trong Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03302. Được sử dụng để phân biệt thời gian tường trong một khoảng thời gian lặp lại. (Một khoảng thời gian lặp lại xảy ra khi đồng hồ được lùi lại vào cuối giờ tiết kiệm ánh sáng ban ngày hoặc khi độ lệch UTC cho vùng hiện tại bị giảm vì lý do chính trị. ) Giá trị 0 (1) thể hiện sớm hơn (muộn hơn) của hai thời điểm có cùng biểu diễn thời gian tường Mới trong phiên bản 3. 6 các đối tượng hỗ trợ so sánh với , trong đó a được coi là nhỏ hơn b khi a đứng trước b về thời gian. Nếu một so sánh là ngây thơ và người kia nhận thức được, sẽ được nâng lên nếu cố gắng so sánh thứ tự. Để so sánh bình đẳng, các trường hợp ngây thơ không bao giờ bằng các trường hợp nhận thức Nếu cả hai đối tượng so sánh đều nhận biết và có cùng thuộc tính, thuộc tính chung sẽ bị bỏ qua và thời gian cơ sở được so sánh. Nếu cả hai bộ so sánh đều nhận biết và có các thuộc tính khác nhau, thì các bộ so sánh trước tiên được điều chỉnh bằng cách trừ đi độ lệch UTC của chúng (thu được từ Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03330). Để ngăn các so sánh kiểu hỗn hợp quay trở lại so sánh mặc định theo địa chỉ đối tượng, khi một đối tượng được so sánh với một đối tượng thuộc loại khác, sẽ được nâng lên trừ khi phép so sánh là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)275 hoặc Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)276. Các trường hợp sau trả về hoặc , tương ứng Đã thay đổi trong phiên bản 3. 3. So sánh bình đẳng giữa các trường hợp nhận thức và ngây thơ không nâng cao. Trong ngữ cảnh Boolean, một đối tượng luôn được coi là đúng Đã thay đổi trong phiên bản 3. 5. Trước Python 3. 5, một đối tượng được coi là sai nếu nó biểu thị nửa đêm theo giờ UTC. Hành vi này được coi là tối nghĩa và dễ bị lỗi và đã bị xóa trong Python 3. 5. Xem bpo-13936 để biết chi tiết đầy đủ. nhà xây dựng khác phương pháp phân loại thời gian. fromisoformat(time_string)Trả về một tương ứng với một time_string ở bất kỳ định dạng ISO 8601 hợp lệ nào, với các ngoại lệ sau
ví dụ Today Date: 2022-09-07 The Next Monday date: 2022-09-1275 Mới trong phiên bản 3. 7 Đã thay đổi trong phiên bản 3. 11. Trước đây, phương pháp này chỉ hỗ trợ các định dạng có thể được phát ra bởi. Phương thức sơ thẩm thời gian. thay thế(giờ=chính mình. giờ , phút=chính mình. phút , giây=chính mình. giây , micro giây=chính mình. micro giây , tzinfo=self. tzinfo , * , gấp=0)Trả về a có cùng giá trị, ngoại trừ các thuộc tính được cung cấp giá trị mới theo bất kỳ đối số từ khóa nào được chỉ định. Lưu ý rằng có thể chỉ định Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03352 để tạo ngây thơ từ một nhận thức mà không cần chuyển đổi dữ liệu thời gian Mới trong phiên bản 3. 6. Đã thêm đối số Today Date: 2022-09-07 Next Monday Date: 2022-09-12596. thời gian. isoformat(timespec=') Trả về một chuỗi biểu thị thời gian ở định dạng ISO 8601, một trong
Đối số tùy chọn timespec chỉ định số lượng thành phần bổ sung của thời gian cần đưa vào (mặc định là >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "60). Nó có thể là một trong những điều sau đây
Ghi chú Các thành phần thời gian bị loại trừ bị cắt bớt, không được làm tròn sẽ được nâng lên trên một đối số timespec không hợp lệ Ví dụ Today Date: 2022-09-07 The Next Monday date: 2022-09-1276 Mới trong phiên bản 3. 6. Đã thêm đối số thông số thời gian. thời gian. __str__()Trong thời gian t, Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)255 tương đương với >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.083thời gian. thời gian chạy(định dạng) Trả về một chuỗi đại diện cho thời gian, được kiểm soát bởi một chuỗi định dạng rõ ràng. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem thời gian. __format__(định dạng)Giống như. Điều này giúp có thể chỉ định một chuỗi định dạng cho một đối tượng trong và khi sử dụng. Để biết danh sách đầy đủ các chỉ thị định dạng, hãy xem thời gian. utcoffset()Nếu là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nếu không thì trả về >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.090 và đưa ra một ngoại lệ nếu cái sau không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một đối tượng có cường độ nhỏ hơn một ngày Đã thay đổi trong phiên bản 3. 7. Phần bù UTC không bị giới hạn trong một số nguyên của phút. thời gian. dst()Nếu là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nếu không thì trả về >>> # Components of another_year add up to exactly 365 days >>> from datetime import timedelta >>> year = timedelta(days=365) >>> another_year = timedelta(weeks=40, days=84, hours=23, .. minutes=50, seconds=600) >>> year == another_year True >>> year.total_seconds() 31536000.096 và đưa ra một ngoại lệ nếu cái sau không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một đối tượng có cường độ nhỏ hơn một ngày Đã thay đổi trong phiên bản 3. 7. DST offset không bị giới hạn trong một số phút. thời gian. tzname()Nếu là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, nếu không thì trả về Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12102 hoặc đưa ra một ngoại lệ nếu cái sau không trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc một đối tượng chuỗi Ví dụ về cách sử dụng.Ví dụ làm việc với đối tượng Today Date: 2022-09-07 The Next Monday date: 2022-09-1277 Các đối tượnglớp ngày giờ. tzinfoĐây là một lớp cơ sở trừu tượng, có nghĩa là lớp này không được khởi tạo trực tiếp. Xác định một lớp con của để nắm bắt thông tin về một múi giờ cụ thể Một thể hiện của (một lớp con cụ thể của) có thể được truyền cho các hàm tạo cho và các đối tượng. Các đối tượng thứ hai xem các thuộc tính của chúng là theo giờ địa phương và đối tượng hỗ trợ các phương thức tiết lộ phần bù giờ địa phương từ UTC, tên của múi giờ và phần bù DST, tất cả đều liên quan đến đối tượng ngày hoặc giờ được truyền cho chúng Bạn cần lấy được một lớp con cụ thể và (ít nhất) cung cấp các triển khai của các phương thức tiêu chuẩn cần thiết cho các phương thức bạn sử dụng. Mô-đun cung cấp , một phân lớp cụ thể đơn giản trong đó có thể biểu thị các múi giờ với phần bù cố định từ UTC, chẳng hạn như chính UTC hoặc EST và EDT của Bắc Mỹ Yêu cầu đặc biệt đối với dưa chua. Một lớp con phải có một phương thức Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12118 có thể được gọi mà không có đối số, nếu không, nó có thể được chọn nhưng có thể không được giải nén lại. Đây là một yêu cầu kỹ thuật có thể được nới lỏng trong tương lai Một lớp con cụ thể của có thể cần phải thực hiện các phương pháp sau. Chính xác những phương pháp nào là cần thiết phụ thuộc vào việc sử dụng các đối tượng nhận biết. Nếu nghi ngờ, chỉ cần thực hiện tất cả chúng tzinfo. utcoffset(dt)Trả về phần bù của giờ địa phương từ UTC, dưới dạng một đối tượng dương ở phía đông của UTC. Nếu giờ địa phương ở phía tây của UTC, điều này sẽ là âm Điều này thể hiện tổng phần bù từ UTC; . Nếu không biết phần bù UTC, hãy trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203. Mặt khác, giá trị được trả về phải là một đối tượng nằm trong khoảng từ Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12126 đến Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12127 (độ lớn của phần bù phải nhỏ hơn một ngày). Hầu hết các triển khai có thể sẽ giống như một trong hai Today Date: 2022-09-07 The Next Monday date: 2022-09-1278 Nếu không trả lại Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203, thì cũng không nên trả lại Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 Việc thực hiện tăng mặc định Đã thay đổi trong phiên bản 3. 7. Phần bù UTC không bị giới hạn trong một số nguyên của phút. tzinfo. dst(dt)Trả lại điều chỉnh thời gian tiết kiệm ánh sáng ban ngày (DST), dưới dạng đối tượng hoặc Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 nếu thông tin DST không được biết Trả lại Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)283 nếu DST không có hiệu lực. Nếu DST có hiệu lực, hãy trả lại phần bù dưới dạng đối tượng (xem để biết chi tiết). Lưu ý rằng phần bù DST, nếu có, đã được thêm vào phần bù UTC được trả về bởi , do đó, không cần tham khảo trừ khi bạn muốn nhận thông tin DST riêng. Ví dụ: gọi phương thức thuộc tính của nó để xác định cách đặt cờ Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03397 và gọi để giải thích cho các thay đổi DST khi vượt qua các múi giờ Một thể hiện tz của một lớp con mô hình hóa cả thời gian tiêu chuẩn và thời gian ban ngày phải nhất quán theo nghĩa này Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12149 phải trả về cùng một kết quả cho mọi dt với Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12151 Đối với các lớp con lành mạnh, biểu thức này mang lại "độ lệch chuẩn" của múi giờ, không phụ thuộc vào ngày hoặc giờ mà chỉ phụ thuộc vào vị trí địa lý. Việc thực hiện ỷ lại vào việc này nhưng không phát hiện được vi phạm; . Nếu một lớp con không thể đảm bảo điều này, nó có thể ghi đè cài đặt mặc định của để hoạt động chính xác với Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03372 bất kể Hầu hết các triển khai có thể sẽ giống như một trong hai Today Date: 2022-09-07 The Next Monday date: 2022-09-1279 hoặc Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0330 Việc thực hiện tăng mặc định Đã thay đổi trong phiên bản 3. 7. DST offset không bị giới hạn trong một số phút. tzinfo. tzname(dt)Trả về tên múi giờ tương ứng với đối tượng dt, dưới dạng chuỗi. Không có gì về tên chuỗi được xác định bởi mô-đun và không có yêu cầu rằng nó có ý nghĩa cụ thể. Ví dụ: “GMT”, “UTC”, “-500”, “-5. 00”, “EDT”, “US/Eastern”, “America/New York” đều là những câu trả lời hợp lệ. Trả lại Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 nếu không biết tên chuỗi. Lưu ý rằng đây chủ yếu là một phương thức chứ không phải là một chuỗi cố định vì một số lớp con sẽ muốn trả về các tên khác nhau tùy thuộc vào giá trị cụ thể của dt được truyền, đặc biệt nếu lớp đó đang tính thời gian ban ngày Việc thực hiện tăng mặc định Các phương thức này được gọi bởi một hoặc đối tượng, để đáp lại các phương thức cùng tên của chúng. Một đối tượng chuyển chính nó làm đối số và một đối tượng chuyển Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 làm đối số. Do đó, các phương thức của lớp con nên được chuẩn bị để chấp nhận đối số dt của Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 hoặc của lớp Khi Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203 được thông qua, người thiết kế lớp sẽ quyết định phản hồi tốt nhất. Ví dụ: trả về ________ 1203 là phù hợp nếu lớp muốn nói rằng các đối tượng thời gian không tham gia vào các giao thức. Có thể hữu ích hơn khi Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12178 trả về phần bù UTC tiêu chuẩn, vì không có quy ước nào khác để khám phá phần bù tiêu chuẩn Khi một đối tượng được truyền để phản hồi một phương thức, thì Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12181 chính là đối tượng như self. các phương thức có thể dựa vào điều này, trừ khi mã người dùng gọi trực tiếp các phương thức. Mục đích là các phương thức diễn giải dt theo giờ địa phương và không cần lo lắng về các đối tượng trong các múi giờ khác Có một phương thức nữa mà một lớp con có thể muốn ghi đè tzinfo. từutc(dt)Điều này được gọi từ việc thực hiện mặc định. Khi được gọi từ đó, Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12181 là chính nó và dữ liệu ngày và giờ của dt sẽ được xem là thể hiện thời gian UTC. Mục đích của là điều chỉnh dữ liệu ngày và giờ, trả về một ngày giờ tương đương theo giờ địa phương của chính bạn Hầu hết các lớp con sẽ có thể kế thừa việc triển khai mặc định mà không gặp sự cố. Nó đủ mạnh để xử lý các múi giờ có độ lệch cố định và các múi giờ tính cả thời gian tiêu chuẩn và thời gian ban ngày và cả thời gian sau ngay cả khi thời gian chuyển đổi DST khác nhau trong các năm khác nhau. Một ví dụ về múi giờ mà việc triển khai mặc định có thể không xử lý chính xác trong mọi trường hợp là trường hợp mà độ lệch tiêu chuẩn (từ UTC) phụ thuộc vào ngày và giờ cụ thể đã trôi qua, điều này có thể xảy ra vì lý do chính trị. Việc triển khai mặc định của Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03372 và có thể không tạo ra kết quả bạn muốn nếu kết quả là một trong những giờ diễn ra vào thời điểm giá trị bù tiêu chuẩn thay đổi Bỏ qua mã cho các trường hợp lỗi, việc triển khai mặc định hoạt động như Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0331 Trong tệp Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12195 sau đây có một số ví dụ về các lớp Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0332 Lưu ý rằng có những sự tinh tế không thể tránh khỏi hai lần mỗi năm trong một phân lớp chiếm cả thời gian tiêu chuẩn và thời gian ban ngày, tại các điểm chuyển tiếp DST. Để cụ thể, hãy xem xét Miền Đông Hoa Kỳ (UTC -0500), nơi EDT bắt đầu sau 1 phút. 59 (EST) vào Chủ nhật thứ hai của tháng 3 và kết thúc vào phút sau 1. 59 (EDT) vào Chủ nhật đầu tiên của tháng 11 Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0333 Khi DST bắt đầu (dòng “bắt đầu”), đồng hồ treo tường địa phương nhảy từ 1. 59 ăn 3. 00. Một bức tường thời gian của mẫu 2. MM không thực sự có ý nghĩa vào ngày đó, vì vậy Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12198 sẽ không mang lại kết quả với Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12199 vào ngày DST bắt đầu. Ví dụ: tại chuyển tiếp mùa xuân năm 2016, chúng tôi nhận được Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0334 Khi DST kết thúc (dòng “kết thúc”), có khả năng xảy ra sự cố tồi tệ hơn. có một giờ không thể đánh vần rõ ràng theo giờ địa phương. giờ cuối cùng của thời gian ban ngày. Ở phương Đông, đó là thời gian của mẫu 5. MM UTC vào ngày thời gian ban ngày kết thúc. Đồng hồ treo tường địa phương nhảy từ 1. 59 (thời gian ban ngày) trở lại 1. 00 (giờ chuẩn) lại. Giờ địa phương của mẫu 1. MM không rõ ràng. Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-03372 bắt chước hành vi của đồng hồ địa phương bằng cách ánh xạ hai giờ UTC liền kề vào cùng một giờ địa phương sau đó. Trong ví dụ phương Đông, thời gian UTC có dạng 5. MM và 6. MM cả ánh xạ tới 1. MM khi được chuyển đổi sang phương Đông, nhưng các lần trước thuộc tính được đặt thành 0 và các lần sau thuộc tính được đặt thành 1. Ví dụ: tại Fall back transition năm 2016, chúng tôi nhận được Today Date: 2022-09-07 4 th Monday date from today is: 2022-10-0335 Lưu ý rằng các trường hợp chỉ khác nhau về giá trị của thuộc tính được coi là bằng nhau khi so sánh Các ứng dụng không thể chịu được sự mơ hồ về thời gian nên kiểm tra rõ ràng giá trị của thuộc tính hoặc tránh sử dụng các lớp con kết hợp; Xem thêm Cơ sở dữ liệu múi giờ IANA Cơ sở dữ liệu múi giờ (thường được gọi là tz, tzdata hoặc zoneinfo) chứa mã và dữ liệu biểu thị lịch sử giờ địa phương cho nhiều vị trí đại diện trên toàn cầu. Nó được cập nhật định kỳ để phản ánh những thay đổi do các cơ quan chính trị thực hiện đối với ranh giới múi giờ, độ lệch UTC và quy tắc tiết kiệm ánh sáng ban ngày Các đối tượngLớp này là một lớp con của , mỗi phiên bản đại diện cho một múi giờ được xác định bởi một phần bù cố định từ UTC Các đối tượng của lớp này không thể được sử dụng để biểu diễn thông tin múi giờ ở những vị trí sử dụng các độ lệch khác nhau trong các ngày khác nhau trong năm hoặc nơi các thay đổi lịch sử đã được thực hiện đối với thời gian dân sự lớp ngày giờ. múi giờ(độ lệch , tên=None)Đối số offset phải được chỉ định làm đối tượng biểu thị sự khác biệt giữa giờ địa phương và UTC. Nó phải hoàn toàn nằm trong khoảng từ Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12126 đến Today Date: 2022-09-07 Previous 4 th Monday date from today is: 2022-08-12127, nếu không sẽ được nâng lên Đối số tên là tùy chọn. Nếu được chỉ định, nó phải là một chuỗi sẽ được sử dụng làm giá trị được trả về bởi phương thức Mới trong phiên bản 3. 2 Đã thay đổi trong phiên bản 3. 7. Phần bù UTC không bị giới hạn trong một số nguyên của phút. múi giờ. utcoffset(dt)Trả về giá trị cố định được chỉ định khi phiên bản được tạo Đối số dt bị bỏ qua. Giá trị trả về là một ví dụ bằng với sự khác biệt giữa giờ địa phương và UTC Đã thay đổi trong phiên bản 3. 7. Phần bù UTC không bị giới hạn trong một số nguyên của phút. múi giờ. tzname(dt)Trả về giá trị cố định được chỉ định khi phiên bản được tạo Nếu tên không được cung cấp trong hàm tạo, tên được trả về bởi >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "324 được tạo từ giá trị của >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "325 như sau. Nếu offset là Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)283, tên là “UTC”, nếu không, nó là một chuỗi ở định dạng >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "327, trong đó ± là dấu của >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "325, HH và MM lần lượt là hai chữ số của >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "329 và >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "330 Đã thay đổi trong phiên bản 3. 6. Tên được tạo từ >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "331 hiện là >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "332 đơn giản, không phải >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "333. múi giờ. dst(dt) Luôn trả về Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)203múi giờ. từutc(dt) Trả lại >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "335. Đối số dt phải là một trường hợp nhận biết, với >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "4 được đặt thành >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "338 Thuộc tính lớp múi giờ. utcMúi giờ UTC, >>> delta2 > delta1 True >>> delta2 > 5 Traceback (most recent call last): File "339 Hành vi >>> delta2 > delta1
True
>>> delta2 > 5
Traceback (most recent call last):
File " |