-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbank.py
39 lines (31 loc) · 1.01 KB
/
bank.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
class Bank(object):
def __init__(self):
self.accounts = {
'Marie': 50,
'PL': 10
}
def getAccounts(self):
return self.accounts
def setAccounts(self, accounts):
self.accounts = accounts
return self.accounts
def updateAccounts(self, transaction):
accounts = self.accounts.copy()
for key in transaction:
if key in accounts.keys():
accounts[key] += transaction[key]
else:
accounts[key] = transaction[key]
self.accounts = accounts
return self.accounts
def isValidTransaction(self, transaction):
if sum(transaction.values()) is not 0:
return False
for key in transaction.keys():
if key in self.accounts.keys():
accountBalance = self.accounts[key]
else:
accountBalance = 0
if (accountBalance + transaction[key]) < 0:
return False
return True