def main(): print("Hello!") parser = Parser() parsed_content = parser.parse_file('money_tracker.txt') mt = MoneyTracker(parsed_content) mt.create_database() while True: choice = get_input() if choice == 1: print(mt) elif choice == 2: mt.print_records_in_date(parser.get_date()) elif choice == 3: mt.print_records_in_category_ordered_by_labels('expense') elif choice == 4: amount = parser.get_amount() date = parser.get_date() label = input('label: ') mt.add_record(date, amount, label, 'income') elif choice == 5: amount = parser.get_amount() date = parser.get_date() label = input('label: ') mt.add_record(date, amount, label, 'expense') elif choice == 6: break elif choice == -1: continue
def get_records_with_label(self, target_label): records = [] for row in self.database: date, cat_obj, category = row if target_label == cat_obj.get_label(): records.append(cat_obj) return records def get_records_in_category_ordered_by_labels(self, target_category): records = self.get_records_in_category(target_category) records.sort(key=lambda cat_obj: cat_obj.get_label()) return records def print_records_in_category_ordered_by_labels(self, target_category): records = self.get_records_in_category_ordered_by_labels(target_category) for record in records: print(record) if __name__ == '__main__': parser = Parser() mt = MoneyTracker(parser.parse_file('money_tracker.txt')) mt.create_database() print(mt) mt.add_record(datetime.strptime('22-03-2019', '%d-%m-%Y'), 250, 'loan', 'expense') mt.sort_database() # mt.print_records_in_date(datetime.strptime('22-03-2019', '%d-%m-%Y')) # print(mt.get_records_in_category_ordered_by_labels('income')) # # [print(row) for row in mt.database]