Menolak Hari daripada Tarikh dalam Python
Apabila bekerja dengan tarikh dan masa dalam Python, selalunya perlu melakukan operasi aritmetik pada objek datetime. Satu tugas biasa ialah menolak hari dari tarikh tertentu. Terdapat beberapa cara untuk mencapai ini, tetapi kaedah yang paling mudah melibatkan penggunaan objek timedelta.
Menggunakan Objek timedelta
Objek timedelta mewakili tempoh masa . Ia boleh digunakan untuk menambah atau menolak jumlah masa tertentu daripada objek datetime. Untuk menolak satu hari daripada tarikh, hanya nyatakan objek timedelta dengan bilangan hari yang sesuai dan tolakkannya daripada objek datetime.
from datetime import datetime, timedelta # Today's date d = datetime.today() # Subtract one day days_to_subtract = 1 d -= timedelta(days=days_to_subtract) # Print the resulting date print(d)
Kod ini akan mencetak tarikh untuk semalam, kerana ia telah menolak satu hari dari tarikh semasa.
Kaedah Lain
Semasa menggunakan objek timedelta adalah cara yang paling biasa untuk menolak hari dari tarikh, terdapat kaedah lain yang boleh digunakan. Satu alternatif ialah menggunakan fungsi time.strftime(). Fungsi ini boleh digunakan untuk menukar objek datetime kepada rentetan, dan rentetan yang terhasil kemudiannya boleh dihuraikan untuk menolak satu hari.
import time # Today's date d = datetime.today() # Convert to string date_str = d.strftime('%Y-%m-%d') # Parse the string and subtract a day days_to_subtract = 1 date_parts = date_str.split('-') new_date_str = '-'.join(date_parts[0:-1]) + '-' + str(int(date_parts[-1]) - days_to_subtract) # Parse the new string back into a datetime object new_date = datetime.strptime(new_date_str, '%Y-%m-%d') # Print the resulting date print(new_date)
Kod ini juga akan mencetak tarikh untuk semalam. Walaupun kaedah ini lebih bertele-tele daripada menggunakan objek timedelta, kaedah ini boleh berguna dalam situasi tertentu, seperti apabila anda perlu menggunakan tarikh dalam format rentetan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menolak Hari daripada Tarikh dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!