728x90
반응형
초보자를 위한 파이썬(Python) 300제 풀이
276. banking 인스턴스에 저장된 정보를 출력하는 display_info() 메서드를 추가하세요. 잔고는 세자리마다 쉼표를 출력하세요.
은행이름: SC은행
예금주: 파이썬
계좌번호: 111-11-111111
잔고: 10,000원
import random
class banking:
account_count = 0
def __init__(self, name, balance):
self.name = name
self.balance = balance
self.bank = "SC은행"
num1 = random.randint(0, 999)
num2 = random.randint(0, 99)
num3 = random.randint(0, 999999)
num1 = str(num1).zfill(3)
num2 = str(num2).zfill(2)
num3 = str(num3).zfill(6)
self.account_number = num1 + '-' + num2 + '-' + num3
banking.account_count += 1
def get_account_num(cls):
print(cls.account_count)
def deposit(self, amount):
if amount >= 1:
self.balance += amount
def withdraw(self, amount):
if self.balance > amount:
self.balance -= amount
def display_info(self):
print("은행이름: ", self.bank)
print("예금주: ", self.name)
print("계좌번호: ", self.account_number)
print("잔고: ", f"{self.balance:,}")
p = banking("파이썬", 10000)
p.display_info()
- 이전 글에서 가져온 인스턴스에서 self.__ 와 같이 print 구문을 사용해서 만들 수 있습니다.
277. 입금 횟수가 5회가 될 때 잔고를 기준으로 1%의 이자가 잔고에 추가되도록 코드를 변경해보세요.
def deposit(self, amount):
if amount >= 1:
self.balance += amount
self.deposit_count += 1
if self.deposit_count % 5 == 0:
self.balance = (self.balance * 1.01)
- 입금 인스턴스에 나머지 연산자를 사용하여 5회마다 1.01이 곱해지게끔 만들 수 있습니다.
278. banking 클래스로부터 3개 이상 인스턴스를 생성하고 생성된 인스턴스를 리스트에 저장해보세요.
data = []
a = banking("A", 1000)
b = banking("B", 2000)
c = banking("C", 3000)
data.append(a)
data.append(b)
data.append(c)
- 위와 같이 값들만 지정해주면 생성이 가능합니다.
279. 반복문을 통해 리스트에 있는 객체를 순회하면서 잔고가 100만원 이상인 고객의 정보만 출력하세요.
for i in data:
if i.balance >= 1000000:
i.display_info()
- 이전 문제의 답안을 참고하여 for와 if문을 통해 만들 수 있습니다.
280. 입금과 출금 내역이 기록되도록 코드를 업데이트 하세요. 입금 내역과 출금 내역을 출력하는 deposit_history와 withdraw_history 메서드를 추가하세요.
self.deposit_count = 0
self.deposit_log = []
self.withdraw_log = []
def withdraw_history(self):
for amount in self.withdraw_log:
print(amount)
def deposit_history(self):
for amount in self.deposit_log:
print(amount)
- 위의 옵션만 추가해주면 입 출금할 때의 내력이 모두 리스트에 저장이 됩니다.
- 그 리스트를 출력만 하면 어떠한 입출금이 오갔는 지 볼 수 있습니다.
출처 = https://wikidocs.net/book/922, 초보자를 위한 파이썬 300제,
PyCharm 사용
728x90
반응형
'개발 > (1) 초위파(Python) 300제 풀이' 카테고리의 다른 글
초보자를 위한 파이썬(Python) 300제 풀이 (286, 287, 288, 289, 290) (0) | 2022.12.25 |
---|---|
초보자를 위한 파이썬(Python) 300제 풀이 (281, 282, 283, 284, 285) (0) | 2022.12.24 |
초보자를 위한 파이썬(Python) 300제 풀이 (271, 272, 273, 274, 275) (0) | 2022.12.22 |
초보자를 위한 파이썬(Python) 300제 풀이 (266, 267, 268, 269, 270) (0) | 2022.12.17 |
초보자를 위한 파이썬(Python) 300제 풀이 (261, 262, 263, 264, 265) (0) | 2022.12.16 |