Strptime Python
Tôi đang viết một chương trình mà bước đầu tiên là chia tên tệp thành hai thành phần. Các tập tin có định dạng. Show
Tôi đang chia nhỏ tập tin như sau
Tuy nhiên, điều này gây ra lỗi. Một thẻ đã tồn tại với tên chi nhánh được cung cấp. Nhiều lệnh Git chấp nhận cả tên thẻ và tên nhánh, vì vậy việc tạo nhánh này có thể gây ra hành vi không mong muốn. Bạn có chắc chắn muốn tạo nhánh này không? Trong hướng dẫn này, chúng ta sẽ xem cách phân tích một chuỗi thành một ngày giờ bằng cách sử dụng 8 với các mã định dạng ngày tiêu chuẩn khác nhau có sẵn trong Python. Ngoài ra, chúng ta sẽ thấy các phương thức tương tự có sẵn trong các mô-đun khác để chuyển đổi một chuỗi thành đối tượng 9 hoặc 0Mục lụcCác bước để chuyển đổi chuỗi thành ngày giờ trong PythonTrong một số trường hợp, ngày và giờ có thể được chuyển thành đối tượng chuỗi. Để chuyển đổi một chuỗi thành một đối tượng 1, chúng ta có thể sử dụng hàm 8 của mô-đun datetimeVí dụ: bạn có thể cần chuyển đổi một chuỗi số như 13-05-2021 thành đối tượng 1. hoặc bạn muốn chuyển đổi chuỗi đại diện cho các ngày như Thứ Hai, ngày 13 tháng 5 năm 2021 thành đối tượng 1Các bước dưới đây cho thấy cách chuyển đổi một chuỗi đại diện cho một ngày thành một đối tượng ngày giờ
Thí dụ. Phân tích chuỗi thành ngày giờcú pháp
Hãy để chúng tôi xem ví dụ về nơi chúng tôi có một chuỗi biểu thị ngày và giờ ở định dạng chuẩn ( 6)
Tham khảo định dạng Python Ngày giờ sử dụng strftime() để chuyển đổi một 1 thành chuỗiĐối tượng chuỗi đến ngày
Thí dụ
Ghi chú. Nếu một chuỗi đại diện cho ngày không có thời gian, chỉ sử dụng mã định dạng 1
Chuỗi thành đối tượng d_object = datetime.strptime("2021/06/27", "%Y/%m/%d").date()0Ngoài ra, bạn có thể sử dụng lớp 3 để chuyển đổi chuỗi chứa thời gian thành đối tượng 0
Ghi chú. Nếu một chuỗi đại diện cho thời gian không có ngày, chỉ sử dụng mã định dạng 8
Chuỗi tới đối tượng d_object = datetime.strptime("2021/06/27", "%Y/%m/%d").date()0 sử dụng Mô-đun thời gianChúng ta có thể sử dụng phương thức 0() của mô-đun thời gian để chuyển đổi thời gian ở định dạng chuỗi thành một đối tượng thời gian ở định dạng 5cú pháp
Hãy xem ví dụ về một chuỗi đề cập đến thời gian ở định dạng giờ-phút-giây 2Thí dụ
đầu ra Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1) Làm thế nào from datetime import datetime # convert yyyy-mm-dd string to date object dt_object = datetime.strptime("2021/06/27 09:15:32", "%Y/%m/%d %H:%M:%S").date() print(dt_object) # Output 2021-06-27 8 hoạt động?Phương thức này về cơ bản chuyển đổi chuỗi thành đối tượng datetime theo định dạng Ghi chú. Trong trường hợp đối số chuỗi được truyền cho phương thức 8 không khớp với định dạng được chỉ định, thì một _ 5 sẽ được đưa ra. Ngoại lệ sẽ có thông báo lỗi hiển thị định dạng không khớp hoặc dữ liệu thừa trong chuỗi. Chúng ta có thể bắt lỗi bằng cách xử lý ngoại lệ bên trong khối 6t
đầu ra 0from datetime import datetime # convert yyyy-mm-dd string to date object dt_object = datetime.strptime("2021/06/27 09:15:32", "%Y/%m/%d %H:%M:%S").date() print(dt_object) # Output 2021-06-27 8 Mã định dạng 8 lấy một số chỉ thị tiêu chuẩn để đề cập đến định dạng của chuỗi để phân tích cú pháp. Bảng sau đây cung cấp tóm tắt các chỉ thị có sẵn cho hàm 8Cùng một bộ chỉ thị được chia sẻ giữa cả hai phương thức 8 và 1Bây giờ chúng ta có thể thấy nhiều kết hợp hơn với các ví dụ để hiểu rõ hơn về các chỉ thị. Mã định dạng dưới đây hoạt động trên tất cả các nền tảng với triển khai C tiêu chuẩn Chỉ thịMô tảVí dụ_______43_______2Ngày trong tháng dưới dạng số thập phân không đệm. CN, Mon, …, Sat (en_US);Vì vậy, Mo, …, Sa (de_DE)______43_______3Tháng của năm dưới dạng số thập phân không đệm. Chủ Nhật, Thứ Hai, …, Thứ Bảy (en_US); Sonntag, Montag, …, Samstag (de_DE) 4Một năm có thế kỷ ở định dạng bốn chữ số0001, 2021, … , 9999 5Một năm không có thế kỷ ở định dạng hai chữ số01, 21, …, 31 6Tên đầy đủ của một ngày trong tuần theo tên của ngôn ngữChủ Nhật, …, Thứ Bảy (en_US); Sonntag, …, Samstag (de_DE) 7Tên viết tắt của một ngày trong tuần là tên viết tắt của ngôn ngữ. CN, …, Sat (en_US);Vì vậy, …, Sa (de_DE)_______43_______8Tên đầy đủ của tháng theo tên địa phươngJan, …, December (en_US); Januar, …, Dezember (de_DE) 9Tên ngắn của tháng là tên viết tắt của ngôn ngữ. Tháng 1, …, Tháng 12 (en_US);Jan, …, Dez (de_DE) Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)0Giờ (đồng hồ 24 giờ) dưới dạng số thập phân không đệm. 01, 02, … , 23 Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)1Giờ (đồng hồ 12 giờ) dưới dạng số thập phân không đệm. 01, 02, …, 12_______44_______2 Ngôn ngữ tương đương với AM hoặc PM. AM, PM (en_US); sáng, chiều (de_DE) Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)3Phút dưới dạng số thập phân không đệm. 00, 01, …, 59 Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)4Thứ hai dưới dạng số thập phân không đệm. 00, 01, …, 59 Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)5Micro giây dưới dạng số thập phân, được đệm bằng 0 ở bên trái. 000000, 000001, …, 999999 Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)6UTC offset ở dạng Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)7 (chuỗi trống nếu đối tượng là ngây thơ). (trống), +0000, -0400, +1030, +063415, -030712. 345216 Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)8Tên múi giờ (chuỗi trống nếu đối tượng là ngây thơ) (trống), UTC, GMT Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)9Ngày trong năm dưới dạng số thập phân không đệm. 001, 002, …, 366_______49_______0Số tuần của năm (Chủ nhật là ngày đầu tiên của tuần) dưới dạng số thập phân không đệm. Tất cả các ngày trong một năm mới trước Chủ nhật đầu tiên được coi là trong tuần 0. 00, 01, …, 53 1Số tuần của năm (Thứ Hai là ngày đầu tuần) dưới dạng số thập phân. Tất cả các ngày trong năm mới trước ngày thứ Hai đầu tiên được coi là trong tuần 0. 00, 01, …, 53 2Đại diện ngày và giờ thích hợp của ngôn ngữ. Thứ ba 16 tháng 8 21. 30. 00 1988 (vi_Hoa Kỳ);Di 16 Thg8 21. 30. 00 1988 (de_DE)____49_______3Mô tả ngày thích hợp của ngôn ngữ. 16/08/88 (Không có); 16/08/1988 (en_US); 16. 08. 1988 (de_DE)____49_______4Mô tả thời gian thích hợp của địa phương. 21. 30. 00 (vi_US); 21. 30. 00 (de_DE) 5Chữ thường 6 ký tự. %strptime() Mã định dạng ngàyChuỗi có tên ngày và tháng thành ngày giờChúng ta có thể phân tích một chuỗi có tên ngày trong tuần đầy đủ hoặc viết tắt và tên tháng đầy đủ hoặc viết tắt thành một đối tượng 1 bằng cách sử dụng các mã định dạng sau
ví dụ 1. Chuỗi có tên đầy đủ ngày và tháng 1ví dụ 2. Chuỗi có tên ngày và tháng viết tắt 2Phân tích chuỗi với AM/PM thành DatetimeChúng ta có thể phân tích cú pháp một chuỗi có chi tiết AM/PM thành đối tượng 1 bằng cách sử dụng chỉ thị định dạng Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)2 3Phân tích chuỗi với múi giờ thành ngày giờChúng ta có thể chuyển đổi một chuỗi có thông tin offset được biểu thị dưới dạng timedelta (+/-) hoặc với tên múi giờ thành đối tượng 1 bằng cách sử dụng các chỉ thị định dạng Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)6 và Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)8 Đọc. Làm việc với Múi giờ trong Python Thí dụ 4đầu ra 5Phân tích chuỗi với ngôn ngữ thành DateTimeChúng ta có thể hiểu từ các chỉ thị rằng phương thức 8 hỗ trợ cả ngôn ngữ Hoa Kỳ en_US và ngôn ngữ Đức de_DEThí dụ 6Chuỗi phân tích ở định dạng ngày ISO 8601Chúng tôi có thể phân tích cú pháp các đối tượng chuỗi có ngày ở định dạng ISO 8601 bằng cách sử dụng phương pháp 8 trong đó phần bù có thể được phân tích cú pháp bằng cách sử dụng chỉ thị định dạng Time Object time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=15, tm_sec=9, tm_wday=0, tm_yday=1, tm_isdst=-1)6 7đầu ra 8Chuyển đổi Chuỗi thành Dấu thời gian
Thí dụ 9Phân tích chuỗi ngày với các thư viện Python khácMặc dù 8 của mô-đun datetime xử lý hầu hết các định dạng ngày, nhưng vẫn có một số nhược điểm, như được đề cập bên dưới
Phân tích chuỗi thành DateTime bằng dateutilMô-đun dateutil cung cấp trình phân tích cú pháp để phân tích cú pháp chuỗi ngày cung cấp trình phân tích cú pháp chung để phân tích hầu hết tất cả các định dạng ngày/giờ đã biết có sẵn Ghi chú. Đây là mô-đun của bên thứ ba, bạn cần cài đặt riêng bằng lệnh pip 0Trong trường hợp ngày tháng không rõ ràng, tôi. e;
1đầu ra 2Phân tích chuỗi thành DateTime bằng mũi tênArrow là một thư viện Python khác giúp tạo các đối tượng ngày và giờ với ít lần nhập hơn và ít mã hơn. API này cho phép kết nối các lỗ hổng trong việc tạo, định dạng và sửa đổi ngày, giờ và dấu thời gian Mũi tên giúp phân tích các định dạng chuỗi ngày và đơn giản hóa việc tạo UTC theo mặc định hoặc các đối tượng nhận biết múi giờ Trước tiên, chúng ta cần cài đặt mũi tên bằng cách sử dụng 19 3Thí dụ Sử dụng phương pháp 20 để phân tích một chuỗi thành ngày 4Phân tích chuỗi thành ngày bằng MayaMaya là một thư viện Python khác chủ yếu để xử lý các ngôn ngữ khác nhau trong các hệ thống khác nhau. Điều này đặc biệt hữu ích khi cùng một mã phải được chuyển sang các hệ điều hành ở các múi giờ khác nhau Chúng ta cần cài đặt Maya bằng lệnh pip sau 5Để phân tích một đối tượng chuỗi thành ngày, chúng ta cần sử dụng phương thức 21() và phương thức 22 để tạo đối tượng ngày giờ
strptime trong Python là gì?Phương thức thời gian Python strptime() phân tích chuỗi biểu thị thời gian theo định dạng . Giá trị trả về là struct_time như được trả về bởi gmtime() hoặc localtime().
Làm cách nào để sử dụng strptime trong Python?Phương thức lớp strptime() nhận hai đối số. chuỗi (được chuyển thành datetime) . %d - Thể hiện ngày trong tháng. Thí dụ. 01, 02,. , 31 %B - Tên đầy đủ của tháng. Thí dụ. tháng Giêng, tháng Hai, v.v. %Y - Năm có bốn chữ số. Thí dụ. 2018, 2019, v.v. strptime và strftime trong Python là gì?strptime là viết tắt của "thời gian phân tích cú pháp" trong đó strftime là của "thời gian định dạng" . Đó là, strptime đối lập với strftime mặc dù chúng sử dụng, thuận tiện, cùng một đặc tả định dạng.
Làm cách nào để lấy dấu thời gian trong Python?Để biết cụ thể thời gian hiện tại, bạn có thể sử dụng phương thức strftime() và truyền vào đó chuỗi ”%H. %M. %S” đại diện cho giờ, phút và giây . |