Apabila mengendalikan nilai masa dalam Python, modul datetime menyediakan pelbagai kelas dan fungsi. Satu kelas yang biasa digunakan ialah datetime.time, yang mewakili bahagian masa sehari. Walau bagaimanapun, jika anda perlu menambah beberapa saat pada nilai datetime.time, anda mungkin menghadapi kesukaran kerana jenis operan yang tidak serasi.
Pendekatan standard menggunakan datetime.timedelta untuk menambah tempoh. Walau bagaimanapun, ini memerlukan mencipta objek datetime dengan tarikh tiruan, dan kemudian menggunakan kaedah .time() untuk mendapatkan semula komponen masa.
<code class="python">import datetime datetime_obj = datetime.datetime(100, 1, 1, 11, 34, 59) new_datetime_obj = datetime_obj + datetime.timedelta(seconds=3) print(new_datetime_obj.time()) # Output: 11:35:02</code>
Pendekatan ini mencapai hasil yang diingini, tetapi melibatkan langkah tambahan.
Sebagai alternatif, anda boleh menggunakan fungsi yang mengambil objek datetime.time dan bilangan saat untuk ditambah:
<code class="python">def add_secs_to_time(time_obj, secs): delta = datetime.timedelta(seconds=secs) return datetime.time( (time_obj.hour + delta.seconds // 3600) % 24, (time_obj.minute + (delta.seconds % 3600) // 60) % 60, (time_obj.second + delta.seconds % 60) % 60 ) time_obj = datetime.time(11, 34, 59) new_time_obj = add_secs_to_time(time_obj, 3) print(new_time_obj) # Output: 11:35:02</code>
Fungsi ini mengira nilai masa baharu secara manual, memastikan pengendalian yang betul bagi carryovers.
Dengan menggunakan pendekatan ini, anda boleh dengan mudah dan cekap menambahkan saat pada objek datetime.time, membenarkan manipulasi masa yang tepat dalam program Python anda.
Atas ialah kandungan terperinci Bagaimana untuk Menambah Detik pada Objek datetime.time Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!