Need help on a project To :"Create a class called BankAccount with the following parameters "
Mark Lawrence
breamoreboy at yahoo.co.uk
Sat Dec 19 20:51:36 EST 2015
On 20/12/2015 01:09, Michael Torrie wrote:
> On 12/19/2015 05:41 PM, Mark Lawrence wrote:
>> On 19/12/2015 23:19, malitician at gmail.com wrote:
>>> you are absolutely correct Mark
>>> i'm a beginner in python and from the original question and test case given above i wrote this
>>>
>>> class BankAccount(object):
>>> def __init__(self, initial_balance=0):
>>> self.balance = initial_balance
>>> def deposit(self, amount):
>>> self.balance +=amount
>>> def withdraw(self, amount):
>>> self.balance -= amount
>>> my_account = BankAccount(90)
>>> my_account.withdraw(1000)
>>> if my_account.balance < 4:
>>> print('invalid transaction')
> ^^^^^^^^^^^^^^^^^^
> This code probably belongs in the withdraw() method.
>
>>> class MinimumBalanceAccount(BankAccount):
>>> def __init__(self, MinimumBalance=4):
>>> self.minbalance = MinimumBalance
>>>
>>> after executing this i got this TEST SOLUTION ERROR which i don't know what it means
>>>
>>> {"finished": true, "success": [{"fullName": "test_balance", "passedSpecNumber": 1}, {"fullName": "test_deposit", "passedSpecNumber": 2}, {"fullName": "test_sub_class", "passedSpecNumber": 3}, {"fullName": "test_withdraw", "passedSpecNumber": 4}], "passed": false, "started": true, "failures": [{"failedSpecNumber": 1, "fullName": "test_invalid_operation", "failedExpectations": [{"message": "Failure in line 23, in test_invalid_operation\n self.assertEqual(self.my_account.withdraw(1000), \"invalid transaction\", msg='Invalid transaction')\nAssertionError: Invalid transaction\n"}]}], "specs": {"count": 5, "pendingCount": 0, "time": "0.000065"}}
>>> -910
>>> invalid transaction
>>>
>>> SO please what is wrong with my code, does it not meet the requirement of the "test case" given above in the question?
>>> Thanks in advance
>>>
>>
>> It's a start but you've still left things out. If I run your code as
>> given above it outputs "invalid transaction", exactly as expected. So
>> how are you running the code? Where does the extra output you give
>> above come from, presumably the "test case", whatever that might be?
>
> While the output is as we'd expect, the program's logic is probably
> wrong. Would not you want to put that logic in the withdraw method to
> prevent an invalid transaction?
>
Frankly I've no idea on the grounds that I simply cannot be bothered to
look, and at this time of the night/early morning I'm not inclined to
play guessing games. Perhaps the OP would be kind enough to provide the
requirements and his/her code in one hit, the answer can be one hit, and
we happily move on to Boxing day.
--
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.
Mark Lawrence
More information about the Python-list
mailing list