4/27

justyoon·2023년 4월 27일
0

이글은 파이썬 300제 중 271 ~ 280번 문제의 내용을 정리합니다.

271 Account 클래스

  • 은행에 가서 계좌를 개설하면 은행이름, 예금주, 계좌번호, 잔액이 설정됩니다.
  • Account 클래스를 생성한 후 생성자를 구현해보세요.
  • 생성자에서는 예금주와 초기 잔액만 입력 받습니다.
    • 예금주 depositor,
    • 초기 잔액 initial_balance
  • 은행이름은 SC은행으로 계좌번호는 3자리-2자리-6자리 형태로 랜덤하게 생성됩니다.
import random

class Account:
    
    def __init__(self, depositor, initial_balance):
        self.depositor = depositor
        self.balance = initial_balance
        # 초기 잔액
        self.bank = "SC bank"
        
        # 계좌번호 데이터 조건
        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)
        
        # 계좌번호 생성 식 예시 (001-01-000001)
        self.account_number = num1 + '-' + num2 + '-' + num3  
        

test = Account("John Doe", 100)
print(test.depositor)
print(test.balance)
print(test.bank)
print(test.account_number)


272 클래스 변수

클래스 변수를 사용해서 Account 클래스로부터 생성된 계좌 객체의 개수를 저장하기

import random

class Account:
    # 클래스 변수 초기값 0 선언
    account_count = 0
	...
	...
    	# 대입 연산자 +=
        Account.account_count += 1


test1 = Account("John Doe", 100)
print(Account.account_count)
test2 = Account("Jane Doe", 100)
print(Account.account_count)


273


274


275


276


277


278


279


280

참고자료

stackoverflow : What is the difference between random.randint and randrange?
codetorial : 파이썬 문자열 앞을 0으로 채우기
homzzang : [string] Python - zfill() 메서드 - 지정 길이가 되도록 문자열 앞에 0 추가
tcpschool : 대입 연산자 (assignment operator)

profile
with gratitude, optimism is sustainable

0개의 댓글