728x90
반응형
초보자를 위한 파이썬(Python) 300제 풀이
271. 은행에 가서 계좌를 개설하면 은행이름, 예금주, 계좌번호, 잔액이 설정됩니다. banking 클래스를 생성한 후 생성자를 구현해보세요. 생성자에서는 예금주와 초기 잔액만 입력 받습니다. 은행이름은 SC은행으로 계좌번호는 3자리-2자리-6자리 형태로 랜덤하게 생성됩니다.
은행이름: SC은행
계좌번호: 111-11-111111
import random
class banking:
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
kim = banking("김민수", 100)
- random 모듈을 시행하여 계좌번호의 랜덤성을 주어줍니다.
- zfill(숫자) 은 숫자번째 자리의 길이인 데이터에서 앞을 모두 0으로 채워줍니다.
- randint 는 그 랜덤 값에서 하나만 가져오겠다는 의미입니다.
272. 클래스 변수를 사용해서 banking클래스로부터 생성된 계좌 객체의 개수를 저장하세요.
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 # 001-01-000001
banking.account_count += 1
- 위 클래스에서 개수 변수값을 0으로 만들어 준 후 시작요소에 += 1 를 적용해주면 됩니다.
273. banking 클래스로부터 생성된 계좌의 개수를 출력하는 get_banking_num() 메서드를 추가하세요.
def get_banking_num(cls):
print(cls.banking_count)
- 새 함수만 만들어주면 바로 작동이 가능합니다.
274. banking 클래스에 입금을 위한 deposit 메서드를 추가하세요. 입금은 최소 1원 이상만 가능합니다.
def deposit(self, amount):
if amount >= 1:
self.balance += amount
- 이전 문제의 답안 코드와 같이 실행하면 금액이 더해지면서 작동을 합니다.
275. banking 클래스에 출금을 위한 withdraw 메서드를 추가하세요. 출금은 계좌의 잔고 이상으로 출금할 수는 없습니다.
def withdraw(self, amount):
if self.balance > amount:
self.balance -= amount
- 이전 문제의 입금 문제에서 출금 부분만 바뀐것이니 -만 바뀌게 된 문제입니다.
출처 = https://wikidocs.net/book/922, 초보자를 위한 파이썬 300제,
PyCharm 사용
728x90
반응형
'개발 > (1) 초위파(Python) 300제 풀이' 카테고리의 다른 글
초보자를 위한 파이썬(Python) 300제 풀이 (281, 282, 283, 284, 285) (0) | 2022.12.24 |
---|---|
초보자를 위한 파이썬(Python) 300제 풀이 (276, 277, 278, 279, 280) (1) | 2022.12.23 |
초보자를 위한 파이썬(Python) 300제 풀이 (266, 267, 268, 269, 270) (0) | 2022.12.17 |
초보자를 위한 파이썬(Python) 300제 풀이 (261, 262, 263, 264, 265) (0) | 2022.12.16 |
초보자를 위한 파이썬(Python) 300제 풀이 (256, 257, 258, 259, 260) (0) | 2022.12.15 |