Вопрос: Сложить и вывести результат?

Лучший ответ:
Ну что сказать... Даже не знаю с чего начать... С того, что вы каждый раз перезаписываете одну и ту же переменную, начиная так сказать с нуля или с...

Ладно, решения есть два. 
1) Задавать нужные данные не через перезапись переменной и вызовом класса, а посредством bank_client.age =, bank_client.full_name =, 
т.е.
bank_client = Client()
bank_client.full_name = input('Введите ваше ФИО: ')
bank_client.age = int(input('Введите ваш возраст: '))
bank_client.age_conditions()
print(bank_client.points)
bank_client.gender = input('Введите ваш пол (М/Ж): ')
bank_client.gender_conditions()
print(bank_client.points)
bank_client.profit = int(input('Введите ваш ежемесячный доход: '))
bank_client.profit_conditions()
print(bank_client.points)
bank_client.credit_history = input('Имеется ли у вас кредитная история: ')
bank_client.credit_history_conditions()
print(bank_client.points)
bank_client.credit_amount = int(input('Сумма кредита: '))
bank_client.credit_amount_conditions()
print(bank_client.points)
bank_client.credit_result()
2) В каждом следующем перезаписывании переменной, добавлять полученные из предыдущего вызова данные. Ну или же к примеру просто передавать каждой следующей функции points. Но как по мне, это лишняя работа
bank_client = Client()
bank_client = Client(full_name = input('Введите ваше ФИО: '))
bank_client = Client(age = int(input('Введите ваш возраст: ')), full_name=bank_client.full_name)
bank_client.age_conditions()
print(bank_client.points)
bank_client = Client(gender = input('Введите ваш пол (М/Ж): '), full_name=bank_client.full_name, age=bank_client.age, points=bank_client.points)
bank_client.gender_conditions()
print(bank_client.points)
bank_client = Client(profit = int(input('Введите ваш ежемесячный доход: ')),full_name=bank_client.full_name, age=bank_client.age, gender = bank_client.gender, points=bank_client.points)
bank_client.profit_conditions()
print(bank_client.points)
bank_client = Client(credit_history = input('Имеется ли у вас кредитная история: '), full_name=bank_client.full_name, age=bank_client.age, gender = bank_client.gender, profit = bank_client.profit, points=bank_client.points)
bank_client.credit_history_conditions()
print(bank_client.points)
bank_client = Client(credit_amount = int(input('Сумма кредита: ')), full_name=bank_client.full_name, age=bank_client.age, gender = bank_client.gender, profit = bank_client.profit, credit_history=bank_client.credit_history, points=bank_client.points)
bank_client.credit_amount_conditions()
print(bank_client.points)
bank_client.credit_result()

P.s. Хоть и видно что первый варянт решения лучше. Но просто я решил, что раз автор хочет через перезапись переменной, не буду уж ему отказывать.

Худший ответ:
Вы опредили что по умполчанию "full_name = None, age = 0, gender = None, profit = 0, credit_history = 0, credit_amount = 0, points = 0"
Это удобно, если в класс поступает сразу все данные которые необходимы, и только если что-то не было введёно, тогда будет значение 0. В ином случае, лучше так не делать.
И при вызыве этого класса, все ваши данные перезаписываются на None или 0.  Как и было написано выше, нужно обращаться не к самому классу, а не посредственно к атрибутам экземпляра :3
Есть вот этот сайт, на нём можно проверить, что куда сохраняется в визуально понятном формате.
Кстати, заметил что в методе credit_history_conditions применяется lower и upper, однако сравнивается с "Да", что ни то, ни другое :D