Python 51

[몸풀기] 자릿수 더하기(22.09.01)

문제 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 나의 풀이 def solution(n): a = list(map(int, str(n))) answer = 0 for i in range(len(a)): answer += a[i] # [실행] 버튼을 누르면 출력 값을 볼 수 있습니다. return answer 다른사람의 풀이 def sum_digit(number): return sum([int(i) for i in str(number)]) # 아래는 테스트로 출력해 보기 위한 코드입니다. print("결과 : {}".format(sum_digit(123)));

Python/algorithm 2022.09.01

[몸풀기] 문자열 내 p와 y의 개수 (22.08.29)

문제 : 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 나의 코드 def solution(s): s = s.lower() # 소문자와 대문자는 아스키코드로 보았을때 다른 것이다. if s.count('p') == s.count('y'): return True else: return False 다른 사람 풀이 참조 코드 def solution(s): return s.lower().count('p') == s.lower().count('y') 결..

Python/algorithm 2022.08.29

Immutable, Mutable

파이썬에서 객체는 수정 가능한 타입도 있고 수정 불가능한 타입도 있습니다. 여기서 수정 불가능한 객체를 immutable 객체라고 부르고 수정 가능한 객체를 mutable 객체라고 부릅니다. 우리가 알고 있는 파이썬 기본 데이터 타입 중 정수, 실수, 문자열, 튜플이 대표적인 immutable 객체 리스트와 딕셔너리가 mutable 객체입니다. 구분타입 Immutable 객체 int, float, str, tuple Mutable 객체 list, dict

Python 2022.06.07

Class 예제(3) - 원통의 표면적, 부피

원통의 부피 공식 Volume of cylinder=πr²h 3.14 * (radius**2) * height 원통의 표면적 공식 Surface Area of a Cylinder = 2πr² + 2πrh 2*(3.14*(radius**2)) + 2*(3.14 * radius * height) class Cylinder: pi = 3.14 def __init__(self,height=1,radius=1): self.height = height self.radius = radius #부피 def volume(self): #round로 소수점 2자리까지 출력 return round(Cylinder.pi * (self.radius**2) * self.height, 2) #표면적 def surface_area(s..

Python 2022.05.17

Class 예제(2) - 두 점 사이의 거리, 기울기

두 점 사이의 거리 구하는 공식 파이썬에서 표현 시 d = ( (x2 - x1)**2 + (y2 - y1)**2 )**0.5 주어진 선의 기울기 구하는 공식 m = (y2-y1)/(x2-x1) 문제 ) class Line: def __init__(self,coor1,coor2): self.coor1 = coor1 self.coor2 = coor2 # 두 점 사이의 거리 def distance(self): x1,y1 = self.coor1 x2,y2 = self.coor2 return ((x2-x1)**2 + (y2 - y1)**2)**0.5 # 두 점사이 거리 직선의 기울기 def slope(self): x1,y1 = self.coor1 x2,y2 = self.coor2 return (y2 - y1)/(..

Python 2022.05.17

Class 예제 (1) - 은행 계정 클래스

다음 두 가지 특성, 두가지 메서드를 가진 은행 계정 클래스를 만드십시오. -Attirbutes -owner ( 예금주 ) -balance ( 예금액 ) -Method -deposit (입금 기능) -withdraw (출금 기능) 추가적으로 , 인출은 사용가능한 예금액을 초과할 수 없습니다. class Account: def __init__(self, owner, balance = 0): self.owner = owner self.balance = balance #입금 메서드 def deposit(self,cash): self.balance += cash print(f'{cash}원이 입금 되었습니다. 현재 잔액은 {self.balance}원 입니다.') #출금 메서드 def withdraw(self,c..

Python 2022.05.17

OOP (객체지향 프로그래밍)

객체지향 프로그래밍(OOP) 이란 프로그램을 여러 객체로 만들고 객체 간의 상호작용을 통해 로직을 구현하는 방법이다. 객체지향 프로그래밍을 사용하면 사용자는 각자의 메소드와 속성을사용하여 자신만의 객체를 만들 수 있다 객체란 속성과 행동으로이루어진 것 변수와 함수로 나타낸다 객체지향 프로그래밍이 가지는 장점으로는 상속을 통해서 코드 재사용이 용이 일일이 찾을 필요 없이 클래스 내부의 메서드나 변수를 수정하면 되기에 유지보수에 있어 수월함 클래스로 모듈화를 시켜 개발할수 있어서 대형 프로젝트에 유리함 단점으로는 설계시 시간이 많이 들고 객체가 많아질 경우 용량이 커진다고 한다 객체 지향 프로그래밍 특징 1) 클래스 + 인스턴스(객체) Class 는 객체를 만들기위한 청사진 인스턴스는 클래스에서 정의 한것을..

Python 2022.05.17

Python - iterator , generator

iterable iterable 객체란 반복 가능한 객체를 뜻하며 iterable 객체에는 list, set, dict, tuple, str, bytes, range 가 있다 iterator iterator 객체란 값을 차례대로 꺼낼 수 있는 객체를 뜻하며 iterable한 객체를 내장함수 또는 iterable객체의 메소드로 객체를 생성할 수 있습니다 파이썬 내장함수 iter()를 사용해 iterator 객체를 만들 수 있습니다 또한 next()를 사용해서 값을 차례로 꺼낼 수 있습니다 numbers = [1,2,3,4,5] numbers_iter = iter(numbers) next(numbers_iter)#1 next(numbers_iter)#2 next(numbers_iter)#3 next(numb..

Python 2022.05.16

Python-Decorator(데코레이터)

Decorator 함수의 내부를 수정하지 않고 기능에 변화를 주고 싶을 때 사용한다 일반적으로 함수의 전처리나 후처리에 대한 필요가 있을때 사용을 한다 또한 데코레이터를 이용해, 반복을 줄이고 메소드나 함수의 책임을 확장한다 @ 으로 시작하는 것이 데코레이터들이다 def trace(func): # 호출할 함수를 매개변수로 받음 def wrapper(): print(func.__name__, '함수 시작') # __name__으로 함수 이름 출력 func() # 매개변수로 받은 함수를 호출 print(func.__name__, '함수 끝') return wrapper # wrapper 함수 반환 @trace # @데코레이터 def hello(): print('hello') @trace # @데코레이터 de..

Python 2022.05.16