import csv def check_unique_Product_ID(Product_ID) : file = open('ProductRecords.csv','r',newline = '') Reader_obj = csv.DictReader(file) count = 0 for line in Reader_obj : if line['Product_ID'] == Product_ID : count += 1 if count == 0: return Product_ID else: print('The Product_ID already exists..!!') print() Product_ID = input('Enter unique Product ID: ') return check_unique_Product_ID(Product_ID) file.close() def Entry(): Data = [] Product_ID = (input('Enter the ID of the Product: ')) Data.append(check_unique_Product_ID(Product_ID)) Product_Name = input('Enter the Name of the Product: ') Product_Price = int(input('Enter the Price of the Product: ')) Product_Quantity = int(input('Enter the Quantity of the Product: ')) Data.extend([Product_Name, Product_Price, Product_Quantity]) file = open('ProductRecords.csv', 'a',newline = '') writer_obj = csv.writer(file) writer_obj.writerow(Data) file.close() print('Entered data has been successfully recorded..!!!') print() def Extract_Data(Product_ID) : print() file = open('ProductRecords.csv','r',newline = '') Reader_obj = csv.DictReader(file) for line in Reader_obj: if line['Product_ID'] == str(Product_ID): for i in line.keys() : print(i , ':' , line[i]) file.close() print() def Extract_Quantity(Product_ID) : print() file = open('ProductRecords.csv','r',newline = '') Reader_obj = csv.DictReader(file) for line in Reader_obj: if line['Product_ID'] == str(Product_ID): print('Quantity of', line['Product_Name'] , ':', line['Product_Quantity']) file.close() print() def Delete_Record(Product_ID) : file = open ('ProductRecords.csv','r+',newline = '') Reader_obj = csv.reader(file) records = [row for row in Reader_obj][1:] temp_records = [] for record in records: if record != []: if record[0] != Product_ID and record != [] : temp_records.append(record) file.close() file = open ('ProductRecords.csv','w+',newline = '') writer_obj = csv.writer(file) writer_obj.writerow(['Product_ID','Product_Name','Product_Price','Product_Quantity']) writer_obj.writerows(temp_records) print('Record deleted successfully.') file.close() def Update_Price(Product_ID,New_Price) : file = open('ProductRecords.csv','r') Reader_obj = csv.DictReader(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) Temp_records = [] for line in Reader_obj : Temp_records.append(line) file.close() for record in Temp_records : if record['Product_ID'] == Product_ID : record['Product_Price'] = New_Price Temp_records = Temp_records[1:] file = open('ProductRecords.csv','w+',newline = '') Writer_obj = csv.DictWriter(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) Writer_obj.writeheader() Writer_obj.writerows(Temp_records) file.close() print('Price has been Updated successfully !!!') def Update_Quantity(Product_ID,New_Quantity) : file = open('ProductRecords.csv','r') Reader_obj = csv.DictReader(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) Temp_records = [] for line in Reader_obj : Temp_records.append(line) file.close() for record in Temp_records : if record['Product_ID'] == Product_ID : record['Product_Quantity'] = New_Quantity Temp_records = Temp_records[1:] file = open('ProductRecords.csv','w+',newline = '') Writer_obj = csv.DictWriter(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) Writer_obj.writeheader() Writer_obj.writerows(Temp_records) file.close() print('Quantity has been Updated successfully !!!') while True: print() print('Press 1 to Insert Product Details: ') print('Press 2 to Fetch Product Details using Product_ID: ') print('Press 3 to Fetch Quantity of the Product using Product_ID: ') print('Press 4 to Delete Product Details using Product_ID: ') print('Press 5 to Update Product Price using Product_ID: ') print('Press 6 to Update Product Quantity using Product_ID: ') print('Press 0 to Exit: ') print() Answer = int(input('Press desired number: ')) if Answer == 1 : n = int(input('Enter the number of entries to be entered: ')) for i in range(n): Entry() elif Answer == 2 : Product_ID = input('Enter the Product ID: ') Extract_Data(Product_ID) elif Answer == 3 : Product_ID = input('Enter the Product ID: ') Extract_Quantity(Product_ID) elif Answer == 4 : Product_ID = input ('Enter the ID of the product to be deleted : ') Delete_Record(Product_ID) elif Answer == 5 : Product_ID = input('Enter the Product ID: ') New_Price = int(input('Enter the New Price of the Product: ')) Update_Price(Product_ID,New_Price) elif Answer == 6 : Product_ID = input('Enter the Product ID: ') New_Quantity = int(input('Enter the New Quantity of the Product: ')) Update_Quantity(Product_ID,New_Quantity) elif Answer == 0 : print('Thank You !!') exit() else: print('No such option exists..!!') exit()