
Python ile araç takip sistemi projemi sizlerle paylaşmak istiyorum. Oto galerilerde ve araç park alanlarında bulunan araç giriş çıkışını yapan ve bilgileri tutan programlardan esinlenerek bu otomasyonu oluşturmak istedim. Proje, sisteme araç ekleme , sistemdeki araçları sorgulama , plaka ile tek tek araç sorgulama , sistemden araç silme gibi özelliklere sahiptir. Python Nesne Yönetimli Programlama (OOP) kullanarak iki ayrı .py dosyasında projeyi oluşturdum. İki ayrı dosyada kullanmamın sebebi karışıklığı ve kod kalabalığını önlemek amaçlıydı. Birinci dosyada projede olmasını istediğim çağrıldığında çalıştırabileceğim fonksiyonlar yer almaktadır. İkinci dosyada ise programın arayüzü bulunuyor diyebiliriz.
Projede sqlite3 ve time modülünü kullandım. Araç verilerini kayıt edebilmek için bir veritabanı kullanmam gerekti. Bunun için sqlite3 ‘ü tercih ettim. Time modülü diğer projelerden bildiğiniz üzere programa gerçeklik katma amaçlı bu projede de yer verdim.
Projede Kullanılanlar :
- Programlama Dilleri : Python ,Sqlite3
- Editör : PyCharm , DB Browser (Sqlite3)
Ekran Görüntüleri :
Resimlerde gördüğünüz gibi sisteme eklenen aracın plakası ile sorgulama ve silme işlemleri yapılabiliyor. Oldukca eğlenceli bir proje oldu. Kodu aşağıda paylaştım. Bir sonra ki projede görüşmek üzere 🙂
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
import sqlite3 import time class Arac(): def __init__(self,plaka,marka,vites,kasa_tipi,renk): self.plaka = plaka self.marka = marka self.vites = vites self.kasa_tipi = kasa_tipi self.renk = renk def __str__(self): return "Plaka: {}\nMarka: {}\nVites: {}\nKasa Tipi: {}\nRenk: {}\n".format(self.plaka,self.marka,self.vites,self.kasa_tipi,self.renk) class Galeri(): def __init__(self): self.baglanti_olustur() def baglanti_olustur(self): self.baglanti = sqlite3.connect("galeri.db") self.cursor = self.baglanti.cursor() sorgu = "Create Table If not exists arabalar (plaka TEXT,marka TEXT,vites TEXT,kasa_tipi TEXT,renk TEXT)" self.cursor.execute(sorgu) self.baglanti.commit() def baglantiyi_kes(self): self.baglanti.close() def arac_goster(self): sorgu = "Select * From arabalar" self.cursor.execute(sorgu) arabalar = self.cursor.fetchall() if (len(arabalar) == 0): print("Galeride Araba Bulunamıyor..") else: for i in arabalar: arac = Arac(i[0],i[1],i[2],i[3],i[4]) print(arac) def arac_sorgula(self,plaka): self.cursor.execute("Select * From arabalar where plaka = ?",(plaka,)) arabalar = self.cursor.fetchall() if (len(arabalar) == 0): print("Böyle bir araç bulunmuyor.....") else: arac = Arac(arabalar[0][0],arabalar[0][1],arabalar[0][2],arabalar[0][3],arabalar[0][4]) print(arac) def arac_ekle(self,arac): sorgu = "Insert into arabalar Values(?,?,?,?,?)" self.cursor.execute(sorgu,(arac.plaka,arac.marka,arac.vites,arac.kasa_tipi,arac.renk)) self.baglanti.commit() def arac_sil(self,plaka): sorgu = "Delete From arabalar where plaka = ?" self.cursor.execute(sorgu,(plaka,)) self.baglanti.commit() |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
from arac import * print("""*********************************** Araç Takip Programına Hoşgeldiniz. İşlemler; 1. Araç Göster 2. Araç Sorgulama 3. ARAÇ Ekle 4. Araç Sil Çıkmak için 'q' ya basın. ***********************************""") arac = Galeri() while True: işlem = input("İşlem seçiniz:") if (işlem == "q"): print("Program Sonlandırılıyor.....") print("Yine bekleriz....") break elif (işlem == "1"): arac.arac_goster() elif (işlem == "2"): plaka = input("Hangi aracı arıyorsunuz ? ") print("Araç Sorgulanıyor...") time.sleep(2) arac.arac_sorgula(plaka) elif (işlem == "3"): plaka= input("Aracın Plakası:") marka = input("Aracın MMarkası:") vites = input("Vites:") kasa_tipi= input("Kasa Tipi:") renk =(input("Aracın Rengi:")) yeni_arac = Arac(plaka,marka,vites,kasa_tipi,renk) print("Araç ekleniyor....") time.sleep(2) arac.arac_ekle(yeni_arac) print("Araç Eklendi....") elif (işlem == "4"): plaka= input("Hangi aracı silmek istiyorsunuz ?") cevap = input("Emin misiniz ? (E/H)") if (cevap == "E"): print("Araç Siliniyor...") time.sleep(2) arac.arac_sil(plaka) print("Araç silindi....") else: print("Geçersiz İşlem...") |