„date_diff.py“ hinzufügen
Übernahme
This commit is contained in:
		
							
								
								
									
										52
									
								
								date_diff.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								date_diff.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,52 @@ | ||||
| #! python | ||||
| import sys | ||||
| from datetime import datetime | ||||
|  | ||||
| def date_diff_in_days(date1, date2): | ||||
|     try: | ||||
|         # Konvertiere die übergebenen Datumsangaben in datetime-Objekte | ||||
|         if date1 == '$today': | ||||
|             print('date1 ist heutiges Datum') | ||||
|             date1_obj = datetime.today() | ||||
|             date1_obj = date1_obj.replace(hour=0,minute=0,second=0,microsecond=0) | ||||
|         else: | ||||
|           print(f'konvertiere erstes Datum {date1}') | ||||
|           date1_obj = datetime.strptime(date1, "%d.%m.%Y") | ||||
|  | ||||
|         if date2 == '$today': | ||||
|             print('date2 ist heutiges Datum') | ||||
|             date2_obj = datetime.today() | ||||
|             date2_obj = date2_obj.replace(hour=0,minute=0,second=0,microsecond=0) | ||||
|         else: | ||||
|           print(f'konvertiere zweites Datum {date2}') | ||||
|           date2_obj = datetime.strptime(date2, "%d.%m.%Y") | ||||
|  | ||||
|         print(f'konvertiere zweites Datum {date2}') | ||||
|  | ||||
|  | ||||
|         # Berechne die Differenz zwischen den beiden Datumsangaben | ||||
|         print(f'erstes Datum: {date1_obj}, zweites Datum: {date2_obj}') | ||||
|         diff = abs(date1_obj - date2_obj).days | ||||
|         return diff | ||||
|     except ValueError as e: | ||||
|         print("Fehler beim Parsen der Datumsangaben:", e) | ||||
|         return None | ||||
|  | ||||
| if __name__ == "__main__": | ||||
|     # Überprüfe, ob genau zwei Datumsangaben als Parameter übergeben wurden | ||||
|     print(f'Params: {sys.argv}') | ||||
|     print(f'Anzahl Param: {len(sys.argv)}') | ||||
|     if len(sys.argv) != 3: | ||||
|         print("Bitte geben Sie zwei Datumsangaben im Format YYYY-MM-DD als Kommandozeilenparameter ein.") | ||||
|     else: | ||||
|         date1 = sys.argv[1] | ||||
|         date2 = sys.argv[2] | ||||
|  | ||||
|         # Berechne die Differenz in Tagen zwischen den beiden Datumsangaben | ||||
|         difference = date_diff_in_days(date1, date2) | ||||
|         if difference is not None: | ||||
|             if sys.argv[1] == '$today': | ||||
|                 date1= 'heutigen Tag' | ||||
|             if sys.argv[2] == '$today': | ||||
|                 date2= 'heutigen Tag' | ||||
|             print(f"Zwischen dem {date1} und dem {date2} liegen {difference} Tage.") | ||||
		Reference in New Issue
	
	Block a user