본문 바로가기

분류 전체보기103

상속, 메소드 오버라이딩, super class Car(): def __init__(self, *args, **kwargs): self.wheels = 4 self.doors = 4 self.windows = 4 self.seats = 4 self.color = kwargs.get("color", "black") self.price = kwargs.get("price", "$20") def __str__(self): return f"Car with {self.wheels} wheels" class Convertible(Car): # 부모클래스를 상속(inherit) def __init__(self, **kwargs): # 메소드 오버라이딩 super().__init__(**kwargs) # 확장(extend)하기 위함. super는 부모 클.. 2020. 4. 21.
input() 대신 sys.stdin.readline() 사용 map, input().split()을 사용하여 값을 입력받기 for i in range(1, (int(input())+1)): x = map(int, input().split()) print(sum(x)) # 실행결과 1 100 200 300 sys.stdin.readline().split()을 사용하여 값을 입력받기 import sys for i in range(1, (int(input())+1)): x = map(int, sys.stdin.readline().split()) print(sum(x)) # 실행결과 1 100 200 300 관련 문제 : https://www.acmicpc.net/problem/15552 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 .. 2020. 4. 13.
음수의 //연산과 %연산 프로그래밍 언어마다 나눗셈을 하는 방식이 다르다. 이는 각 언어의 설계자마다 나눗셈을 할 때, 반올림을 양수의 무한대로 할지 음수의 무한대로 할지 결정하는데 파이썬과 루비의 같은 경우는 음수의 무한대로 가는 방법을 선택했다. //연산 # python에서 양수의 //연산을 할 경우 print("29/60 :", 29/60) # 0.48333333333333334 print("29//60 :", 29//60) # 0 # python에서 음수의 //연산을 할 경우 print("-29/60 :", 29/60) # -0.48333333333333334 print("-29//60 :", 29//60) # -1 참고 : https://stackoverflow.com/questions/19517868/integer-d.. 2020. 4. 12.
메서드, 함수 메서드 __init__ - 초기화 함수 - 인스턴스를 만들 때 실행되는 함수 __str__ - 인스턴스 자체를 출력 할 때의 형식을 지정해주는 함수 함수 input() : 사용자 입력 - 사용자가 변수에 입력값을 받고 싶을 때 사용. - 반환 형태는 문자열(str)이다. A = input("A : ") B = int(input("B : "))# 입력 받을 때부터 int로 형변환할 수 있다. print(type(A)) A = int() print(type(A)) print("A의 값은 ", A) print(type(B)) print("\nB의 값은 ", B) # 실행결과 A : 5# 5를 입력 하고 엔터 B : 8# 8을 입력하고 엔터 A의 값은 0 B의 값은 8 split()을 이용하여 여러개의 숫자 입.. 2020. 4. 6.