Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.33 KB | None | 0 0
  1. import json
  2. import os
  3. class Car:
  4. car_list=[]
  5.  
  6. def __init__(self,marka="brak",model="brak",rocznik="brak",pojemnosc="brak",przebieg="brak",typ_skrzynki="brak"):
  7. self.marka=marka
  8. self.model=model
  9. self.rocznik=rocznik
  10. self.pojemnosc=pojemnosc
  11. self.przebieg=przebieg
  12. self.typ_skrzynki=typ_skrzynki
  13.  
  14. def load_from_base(self):
  15. try:
  16. with open('bz.json') as f:
  17. self.car_list = json.load(f)
  18. except FileNotFoundError:
  19. msg= "Przepraszam ale nie ma żadnej bazy, zostanie utworzony nowy plik"
  20. print (msg)
  21.  
  22. def add_car(self,marka,model,rocznik,pojemnosc,przebieg,typ_skrzynki):
  23. self.carlist={'marka' : marka,'model' : model, 'rocznik' : rocznik,'pojemnosc'
  24. : pojemnosc, 'przebieg' : przebieg, 'typ_skrzynki' : typ_skrzynki}
  25. self.car_list.append(self.carlist)
  26. with open ('bz.json','w') as f:
  27. json.dump(self.car_list,f)
  28.  
  29. def show_cars(self):
  30.  
  31. if len(self.car_list) == 0:
  32. print(" Baza jest pusta, nie ma co wyswietlic! \n ")
  33. else:
  34. i=0
  35. for car in self.car_list:
  36.  
  37. print ("element bazy nr [ " + str(i) + " ]")
  38. print ("Marka: "+ car['marka'] )
  39. print ("Model: "+ car['model'] )
  40. print ("Rocznik: "+ str(car['rocznik']) )
  41. print ("Pojemność: "+ str(car['pojemnosc']) )
  42. print ("Typ skrzynki: "+ str(car['typ_skrzynki']) )
  43. i=i+1
  44. def show_warunkowe(self):
  45. if len(self.car_list) == 0:
  46. print(" Baza jest pusta, nie ma co wyswietlic! \n ")
  47. else:
  48. for car in self.car_list:
  49. for ccar in car.values():
  50. if( car['pojemnosc'] > 150 ):
  51. print (ccar)
  52.  
  53. def show_konkret(self,numer):
  54. if len(self.car_list) <= numer:
  55. print ("Wyszedles poza zakres bazy")
  56. else:
  57. print(self.car_list[numer])
  58.  
  59. def sortowanie(self):
  60. if len(self.car_list) == 0:
  61. print(" Baza jest pusta, nie ma co wyswietlic! \n ")
  62. else:
  63. sorted_cars=[]
  64. for car in self.car_list:
  65. sorted_cars.append(car['marka'])
  66. for car in sorted(sorted_cars):
  67. print (car)
  68.  
  69. def delete_car(self,numer):
  70. if len(self.car_list) <= numer:
  71. print ("Wyszedles poza zakres bazy")
  72. else:
  73. del self.car_list[numer]
  74. new_car2=Car()
  75. stop_program=True
  76. what_to_do= int(input("Czy chcesz wczytac baze z pliku? Jeżeli nie skasujesz poprzednią baze\n[1] tak \n[2] nie \n"))
  77. if (what_to_do == 1):
  78. new_car2.load_from_base()
  79. elif(what_to_do ==2):
  80. try:
  81. os.remove('bz.json')
  82. except FileNotFoundError:
  83. pass
  84. while(stop_program):
  85. opcja= int(input ("WYBIERZ OPCJE \n [1] DODAJ AUTO \n [2] WYSWIETL WSZYSTKO" +
  86. " \n [3] POSORTUJ \n [4] WYSWIETL KONKRETNE AUTO \n [5] WYSWIETL AUTA Z MOCA POWYZEJ 150 KM" +
  87. "\n [6] USUN ELEMENT \n [7] ZAKONCZ PROGRAM\n"))
  88. if(opcja == 1):
  89. podaj_marke= input ("podaj marke")
  90. podaj_model= input ("podaj model")
  91. podaj_rocznik = int(input("podaj rocznik"))
  92. podaj_pojemnosc = int(input("podaj pojemnosc"))
  93. podaj_przebieg = int(input("podaj przebieg"))
  94. podaj_typ_skrzyni = input("podaj typ skrzyni")
  95. new_car2.add_car(podaj_marke,podaj_model,podaj_rocznik,podaj_pojemnosc,podaj_przebieg,podaj_typ_skrzyni)
  96. elif(opcja == 2):
  97. new_car2.show_cars()
  98. elif(opcja == 3):
  99. new_car2.sortowanie()
  100. elif(opcja == 4):
  101. if len(new_car2.car_list) == 0:
  102. print(" Baza jest pusta, nie ma co wyswietlic! \n ")
  103. else:
  104. k=int(input("podaj nr by wyswietlic konkretne dane "))
  105. new_car2.show_konkret(k)
  106. elif(opcja == 5):
  107. new_car2.show_warunkowe()
  108. elif(opcja == 6):
  109. if len(new_car2.car_list) == 0:
  110. print(" Baza jest pusta, nie ma co wyswietlic! \n ")
  111. else:
  112. k= int(input("podaj nr by skasowac z bazy dane "))
  113. new_car2.delete_car(k)
  114. elif(opcja == 7):
  115. stop_program=False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement