Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import json
- import os
- class Car:
- car_list=[]
- def __init__(self,marka="brak",model="brak",rocznik="brak",pojemnosc="brak",przebieg="brak",typ_skrzynki="brak"):
- self.marka=marka
- self.model=model
- self.rocznik=rocznik
- self.pojemnosc=pojemnosc
- self.przebieg=przebieg
- self.typ_skrzynki=typ_skrzynki
- def load_from_base(self):
- try:
- with open('bz.json') as f:
- self.car_list = json.load(f)
- except FileNotFoundError:
- msg= "Przepraszam ale nie ma żadnej bazy, zostanie utworzony nowy plik"
- print (msg)
- def add_car(self,marka,model,rocznik,pojemnosc,przebieg,typ_skrzynki):
- self.carlist={'marka' : marka,'model' : model, 'rocznik' : rocznik,'pojemnosc'
- : pojemnosc, 'przebieg' : przebieg, 'typ_skrzynki' : typ_skrzynki}
- self.car_list.append(self.carlist)
- with open ('bz.json','w') as f:
- json.dump(self.car_list,f)
- def show_cars(self):
- if len(self.car_list) == 0:
- print(" Baza jest pusta, nie ma co wyswietlic! \n ")
- else:
- i=0
- for car in self.car_list:
- print ("element bazy nr [ " + str(i) + " ]")
- print ("Marka: "+ car['marka'] )
- print ("Model: "+ car['model'] )
- print ("Rocznik: "+ str(car['rocznik']) )
- print ("Pojemność: "+ str(car['pojemnosc']) )
- print ("Typ skrzynki: "+ str(car['typ_skrzynki']) )
- i=i+1
- def show_warunkowe(self):
- if len(self.car_list) == 0:
- print(" Baza jest pusta, nie ma co wyswietlic! \n ")
- else:
- for car in self.car_list:
- for ccar in car.values():
- if( car['pojemnosc'] > 150 ):
- print (ccar)
- def show_konkret(self,numer):
- if len(self.car_list) <= numer:
- print ("Wyszedles poza zakres bazy")
- else:
- print(self.car_list[numer])
- def sortowanie(self):
- if len(self.car_list) == 0:
- print(" Baza jest pusta, nie ma co wyswietlic! \n ")
- else:
- sorted_cars=[]
- for car in self.car_list:
- sorted_cars.append(car['marka'])
- for car in sorted(sorted_cars):
- print (car)
- def delete_car(self,numer):
- if len(self.car_list) <= numer:
- print ("Wyszedles poza zakres bazy")
- else:
- del self.car_list[numer]
- new_car2=Car()
- stop_program=True
- what_to_do= int(input("Czy chcesz wczytac baze z pliku? Jeżeli nie skasujesz poprzednią baze\n[1] tak \n[2] nie \n"))
- if (what_to_do == 1):
- new_car2.load_from_base()
- elif(what_to_do ==2):
- try:
- os.remove('bz.json')
- except FileNotFoundError:
- pass
- while(stop_program):
- opcja= int(input ("WYBIERZ OPCJE \n [1] DODAJ AUTO \n [2] WYSWIETL WSZYSTKO" +
- " \n [3] POSORTUJ \n [4] WYSWIETL KONKRETNE AUTO \n [5] WYSWIETL AUTA Z MOCA POWYZEJ 150 KM" +
- "\n [6] USUN ELEMENT \n [7] ZAKONCZ PROGRAM\n"))
- if(opcja == 1):
- podaj_marke= input ("podaj marke")
- podaj_model= input ("podaj model")
- podaj_rocznik = int(input("podaj rocznik"))
- podaj_pojemnosc = int(input("podaj pojemnosc"))
- podaj_przebieg = int(input("podaj przebieg"))
- podaj_typ_skrzyni = input("podaj typ skrzyni")
- new_car2.add_car(podaj_marke,podaj_model,podaj_rocznik,podaj_pojemnosc,podaj_przebieg,podaj_typ_skrzyni)
- elif(opcja == 2):
- new_car2.show_cars()
- elif(opcja == 3):
- new_car2.sortowanie()
- elif(opcja == 4):
- if len(new_car2.car_list) == 0:
- print(" Baza jest pusta, nie ma co wyswietlic! \n ")
- else:
- k=int(input("podaj nr by wyswietlic konkretne dane "))
- new_car2.show_konkret(k)
- elif(opcja == 5):
- new_car2.show_warunkowe()
- elif(opcja == 6):
- if len(new_car2.car_list) == 0:
- print(" Baza jest pusta, nie ma co wyswietlic! \n ")
- else:
- k= int(input("podaj nr by skasowac z bazy dane "))
- new_car2.delete_car(k)
- elif(opcja == 7):
- stop_program=False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement