Python Kronometre Yapımı
Python, kronometre yapmak için kullanılabilecek güçlü bir programlama dilidir. Python’da kronometre yapmak için birkaç farklı yol vardır, ancak en yaygın yöntemlerden biri time
modülünü kullanmaktır.
time
modülü, zamanla ilgili çeşitli işlevler sağlar. Bu işlevlerden biri de time()
işlevi olup, bu işlev şu anki zamanı saniye cinsinden döndürür. Bu işlevi kullanarak, kronometre yapmak için aşağıdaki adımları izleyebilirsiniz:
time
modülünü içe aktarın:
python
import time
- Başlangıç zamanını kaydedin:
python
start_time = time.time()
- Kronometreyi başlatın:
python
while True:
current_time = time.time()
elapsed_time = current_time - start_time
print(elapsed_time)
time.sleep(1)
Bu kod, her saniye şu anki zamanı kaydedecek ve başlangıç zamanından bu yana geçen süreyi yazdıracaktır. Kronometreyi durdurmak için, Ctrl+C
tuşlarına basabilirsiniz.
Python Kronometre Yapımı için Diğer Yöntemler
time
modülünü kullanmanın yanı sıra, Python’da kronometre yapmak için başka yöntemler de vardır. Bu yöntemlerden biri de datetime
modülünü kullanmaktır.
datetime
modülü, tarih ve saatle ilgili çeşitli işlevler sağlar. Bu işlevlerden biri de datetime.now()
işlevi olup, bu işlev şu anki tarihi ve saati döndürür. Bu işlevi kullanarak, kronometre yapmak için aşağıdaki adımları izleyebilirsiniz:
datetime
modülünü içe aktarın:
python
import datetime
- Başlangıç tarihini ve saatini kaydedin:
python
start_datetime = datetime.datetime.now()
- Kronometreyi başlatın:
python
while True:
current_datetime = datetime.datetime.now()
elapsed_time = current_datetime - start_datetime
print(elapsed_time)
time.sleep(1)
Bu kod, her saniye şu anki tarihi ve saati kaydedecek ve başlangıç tarihinden ve saatinden bu yana geçen süreyi yazdıracaktır. Kronometreyi durdurmak için, Ctrl+C
tuşlarına basabilirsiniz.
Python Kronometre Yapımı için Ek Özellikler
Yukarıdaki örneklerde verilen kronometreler, temel bir kronometre işlevi görmektedir. Ancak, Python’da kronometre yaparken ek özellikler de ekleyebilirsiniz. Örneğin, aşağıdaki özellikleri ekleyebilirsiniz:
- Başlatma ve durdurma düğmeleri
- Tur zamanları
- Ortalama tur zamanı
- En iyi tur zamanı
- En kötü tur zamanı
Bu özellikleri eklemek için, tkinter
modülünü kullanabilirsiniz. tkinter
modülü, Python’da grafiksel kullanıcı arayüzleri (GUI) oluşturmak için kullanılan bir modüldür.
Python Kronometre Yapımı için Örnek Kod
Aşağıdaki kod, tkinter
modülünü kullanarak oluşturulmuş bir kronometre örneğidir:
“`python
import tkinter as tk
import time
class Stopwatch:
def init(self):
self.root = tk.Tk()
self.root.title(“Kronometre”)
self.start_time = None
self.elapsed_time = 0
self.start_button = tk.Button(self.root, text="Başlat", command=self.start)
self.start_button.pack()
self.stop_button = tk.Button(self.root, text="Durdur", command=self.stop)
self.stop_button.pack()
self.reset_button = tk.Button(self.root, text="Sıfırla", command=self.reset)
self.reset_button.pack()
self.lap_button = tk.Button(self.root, text="Tur", command=self.lap)
self.lap_button.pack()
self.time_label = tk.Label(self.root, text="00:00.00")
self.time_label.pack()
self.lap_list = tk.Listbox(self.root)
self.lap_list.pack()
def start(self):
self.start_time = time.time()
def stop(self):
self.elapsed_time = time.time() - self.start_time
def reset(self):
self.start_time = None
self.elapsed_time = 0
self.time_label.config(text="00:00.00")
self.lap_list.delete(0, tk.END)
def lap(self):
lap_time = time.time() - self.start_time
self.lap_list.insert(tk.END, f"{lap_time:.2f}")
def update_time(self):
if self.start_time is not None:
self.elapsed_time = time.time() - self.start_time
self.time_label.config(text=f"{self.elapsed_time:.2f}")
self.root.after(100, self.update_time)
if name == “main“:
stopwatch = Stopwatch()
stopwatch.update_time()
stopwatch.root.mainloop()
“`
Bu kod, tkinter
modülünü kullanarak oluşturulmuş bir kronometre örneğidir. Bu kronometre, başlatma, durdurma, sıfırlama ve tur alma gibi özelliklere sahiptir.