Viết chương trình nhập vào tổng số giây in lên màn hình dưới dạng giờ, phút, giây Python
Mới có cuốn tài liệu (mới down của anh @david15894 thì phải), bỏ qua những câu dễ (những câu căn bản mà em đã làm cả chục lần để nhớ cái ý tưởng), em gặp câu này: Show Mọi người giúp em bài này Ý tưởng 1h = 60 phút, 1phút=60s, bạn cứ chia cho 60. VD: 61/60 = 1 dư 1, 150s = 150/60 = 2dư30 = 2phút30s. Nếu là giờ thì chia 3600. Có S là số giây nhập vào:
Cám ơn mọi người, em đi lấy s - 3600, 60 xem nó có âm không nên nghĩ mãi không giải quyết được
1 Like
Bạn xem thử đoạn code này. Mới nghĩ ra , có lỗi gì thì fix lại giúp mình. #include
Mục lục
Giới thiệuPython có mudule datetime để làm việc và xử lý ngày giờ cùng các mốc thời gian. Hãy cùng chạy thử một vài chương trình đơn giản trước khi chúng ta đào sâu hơn. Ví dụ 1: Trả về ngày giờ hiện tại
import datetime Khi bạn chạy chương trình, output sẽ ở dạng: 2019-03-06 11:13:33.969330 Ở ví dụ này, ta vừa nhập module datetime bằng cách sử dụng câu lệnh import datetime. Class datetime được khai báo trong module datetime, sau đó sử dụng lệnh now() để tạo một đối tượng datetime chứa ngày và giờ cục bộ hiện tại. Ví dụ 2: Trả về ngày hiện tại import datetime Khi bạn chạy chương trình, output sẽ ở dạng: 2019-03-06 Trong chương trình này, ta sử dụng lệnh today() được khai báo trong class date để lấy về kết quả ngày cục bộ hiện tại. Có gì bên trong datetime?Bạn có thể sử dụng hàm dir() để hiển thị danh sách tất cả các thuộc tính của module datetime. import datetime Chạy chương trình, kết quả trả về là: ['MAXYEAR', 'MINYEAR', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__',
Các lớp thường được sử dụng trong module datetime là:
Lớp datetime.dateĐối tượng của class date trả về kết quả thông tin ngày tháng (date), không bao gồm thông tin thời gian. Ngày tháng được truyền ở dạng ‘year, month, day’. import datetime Khi bạn chạy chương trình, output sẽ ở dạng: 2019-04-12 Bạn cũng có thể cập nhật class date từ module datetime như này: from datetime import date Ví dụ 3: Cập nhật ngày hiện tại Sử dụng phương thức today() from datetime import date Ví dụ 4: Gọi ngày từ timestamp Thời gian Unix (Unix timestamp) là hệ thống nhằm diễn tả một điểm trên trục thời gian, theo trục thời gian nó sử dụng số giây để xác định thời điểm, với điểm gốc từ thời điểm 00:00:00 ngày 1/1/1970 theo giờ UTC. Ví dụ lúc 00:00:00 - 12/02/2016 có giá trị timestamp là 1455235200; Có nghĩa là tính từ 00:00:00 - 1/1/1970 đến 00:00:00 - 12/02/2016 là 1455235200 giây. Và ở trong Python, bạn có thể tạo đối tượng ngày từ một timestamp. from datetime import date
Khi bạn chạy chương trình, output sẽ ở dạng: Date = 2019-03-07 Ví dụ 5: In ra ngày tháng năm hiện tại from datetime import date Khi bạn chạy chương trình, output sẽ ở dạng: Nam hien tai: 2019 Lớp datetime.timeĐối tượng của class time trả về kết quả thông tin thời gian (time) hiện tại, không bao gồm thông tin ngày tháng. from datetime import time Kết quả trả về là: a = 00:00:00 Ví dụ 6: In ra giờ, phút, giây và micro giây from datetime import time Khi bạn chạy chương trình, output sẽ ở dạng: hour = 11 Ở ví dụ trên ta không truyền tham số cho micro giây nên giá trị trả về ở dạng mặc định là 0. Lớp datetime.datetimeĐối tượng của class datetime trả về kết quả bao gồm thông tin của cả thời gian và ngày tháng. from datetime import datetime Chạy chương trình ta được kết quả: 2019-03-07 00:00:00 3 tham số đầu tiên 'year, month, day' là bắt buộc. Ví dụ 7: In ra năm, tháng, giờ, phút, timestamp from datetime import datetime Kết quả trả về là: year = 2019 Lớp datetime.timedeltaTimedelta là một khoảng thời gian mô tả sự khác biệt giữa 2 mốc thời gian. from datetime import datetime, date Kết quả trả về là: t3 = 201 days, 0:00:00 t3 và t6 ở đây đều là đối tượng timedelta Ví dụ 8: Khoảng thời gian chênh lệch giữa 2 đối tượng timedelta from datetime import timedelta Chạy chương trình, ta được output như sau: t3 = 14 days, 13:55:39 Ví dụ 9: Xử lý timedelta mang giá trị âm from datetime import timedelta Kết quả thu được là: t3 = -1 day, 23:59:39 Ví dụ 10: Chuyển khoảng thời gian chênh lệch timedelta về dạng tổng số giây Bạn có thể chuyển kết quả về dạng tổng số giây bằng phương thức Total_seconds(). from datetime import timedelta Ta được kết quả: Tong so giay = 435633.233423
Các toán tử hỗ trợ timedelta:
Định dạng thời gian PythonNgày tháng và thời gian được sử dụng ở những dạng khác nhau, Mỹ sử dụng định dạng mm/dd/yyyy, trong khi dd/mm/yyyy phổ biến hơn ở Anh. Python có các phương thức strftime() và strptime() để xử lý việc này. strftime() - định dạng thời gian thành một string.Ví dụ 11: Định dạng ngày tháng sử dụng strftime() from datetime import datetime Chương trình trả về kết quả là: time: 04:34:52 Ở đây %Y, %m, %d, %H... là các tham số định dạng. Phương thức strftime() sử dụng để trả về một chuỗi được định dạng dựa trên các tham số đó. Phạm vi tham số:
strptime() - phân tích một string thành thời gianfrom datetime import datetime Khi bạn chạy chương trình, kết quả trả về là: date_string = 7 March, 2019 Hiển thị múi giờ trong PythonGiả sử, bạn đang làm việc trên một dự án và cần hiển thị ngày giờ dựa trên múi giờ mình cần. Thay vì cố gắng tự search và tìm kiếm múi giờ, bạn nên sử dụng module pytZ như sau: from datetime import datetime Chạy chương trình, kết quả trả về là: Local time: 2019-03-07 13:10:44.260462 Ở ví dụ này, datetime_NY và datetime_London là các đối tượng datetime chứa ngày và giờ hiện tại của múi giờ tương ứng. |