2021/05 15

[python] 파이썬 filter 함수 사용법과 예제

안녕하세요. BlockDMask입니다. 오늘은 파이썬에서 유용하게 사용하는 함수인 filter 함수에 대해서 알아보려고 합니다. 1. 파이썬 filter 함수 설명 2. 파이썬 filter 함수 예제 1. filter 함수 설명과 간단 사용법 1-1) filter 함수 기본 설명 필터 함수는 이전 시간에 배웠던 map함수와 동일한 구조로 작동하게 되어있습니다. map이 iterator 모든 값에 어떤 짓(?)을 한다고 하면 filter는 iterator 값들 중에 입맛에 맞는 값들만 쭉쭉 빼서 리스트를 만든다고 생각하면 됩니다. filter(function, iterator) 첫 번째 매개변수로는 필터링을 적용시킬 함수가 오고 두 번째 매개변수로는 반복 가능한 값들이 들어오게 됩니다. filter 함수는..

[python] 파이썬 map 함수 사용법과 예제

안녕하세요. BlockDMask입니다. 오늘은 파이썬 map 함수에 대한 이야기를 해보려 합니다. 1. 파이썬 map 함수 설명과 사용법 2. 파이썬 map 함수 예제 1. map 함수 설명과 사용법 1-1) 파이썬 맵 함수 기본 설명 map(function, iterable) map 함수의 모양은 위와 같습니다. 첫 번째 매개변수로는 함수가 오고 두 번째 매개변수로는 반복 가능한 자료형(리스트, 튜플 등)이 옵니다. map 함수의 반환 값은 map객체 이기 때문에 해당 자료형을 list 혹은 tuple로 형 변환시켜주어야 합니다. 함수의 동작은 두 번째 인자로 들어온 반복 가능한 자료형 (리스트나 튜플)을 첫 번째 인자로 들어온 함수에 하나씩 집어넣어서 함수를 수행하는 함수입니다. map(적용시킬 함수..

[python] 파이썬 삼각함수(sin, cos, tan)와 각도(degree, radian) 정리

안녕하세요. BlockDMask입니다. 오늘은 파이썬의 삼각함수 sin, cod, tan에 대해서 알아보려고 합니다. 1. 파이썬에서 각도 degree, radian 정리 2. 파이썬에서 삼각함수 sin, cos, tan 값 구하기 1. 파이썬에서 degree, radian 그리고 상수 파이 파이썬에서 삼각함수, 각도와 같이 수학 관련 함수들을 사용하기 위해서는 math라는 모듈(라이브러리)을 import 해야 합니다. 우리가 사용하는 0 ~ 360도를 나타내는 것은 60분법으로 계산을 하는 것이며, degree라고 부릅니다. "360도 회전 킥" 뭐 이런 식으로 쓰이죠? 이것은 한 바퀴를 360 등분으로 나누어서 사용하는 것입니다. 하지만 우리에겐 익숙하지 않지만, 국제적으로는 라디안 (rad, rad..

[python] 파이썬 팩토리얼(factorial) 구하기 3가지 방법

안녕하세요. BlockDMask입니다. 오늘은 파이썬에서 팩토리얼을 구하는 3가지 방법에 대해서 이야기해보려 합니다. 1. 재귀를 이용한 팩토리얼 2. 반복을 이용한 팩토리얼 3. math.factorial 함수를 이용한 팩토리얼 1. 파이썬 팩토리얼 재귀 재귀 함수를 이용해서 팩토리얼을 구할 수 있습니다. 일단 팩토리얼을 간단하게 보면 팩토리얼은 자기를 포함해서 하나씩 작은 수를 곱해가면서 1까지 곱해나가는 것을 말합니다. 0! = 1 1! = 1이고 3! 은 3 * 2 * 1입니다. 그렇기 때문에 N! 은 N * (N-1) * (N-2) *.... 3 * 2 * 1입니다. 자세히 보면 N을 곱하고 N에서 하나 뺀 값을 곱하고 그 N에서 하나 뺀 값에서 하나 더 빼서 곱하고.. 이런 식이죠? 이걸 재귀..

<개인공부>/[Python] 2021.05.27 (1)

[C++] RTTI, 타입 정보 얻기

안녕하세요. BlockDMask입니다. 오늘은 RTTI라는 것에 대해서 알아보려고 하는데요, 간단히 말해서 실행시간에 타입의 정보를 얻을 때 사용하는 것입니다. 즉 타입을 알아올 때 사용. 1. C++ RTTI란? 2. C++ RTTI 사용 방법 1. C++ RTTI 설명 1-1) C++ RTTI와 typeid RTTI는 Run Time Type information이라 하며, 프로그램 실행 중에 실시간으로 데이터의 타입을 얻어올 때 사용하는 방법입니다. RTTI 기술을 이용해서 데이터 타입을 얻어올 수가 있는데요. 이때 사용하는 것이 typeid 연산자입니다. typeid 연산자는 헤더에 존재합니다. typeid(변수) typeid(데이터 타입) 이런 식으로 데이터 타입의 정보를 얻어올 수 있습니다. ..

[C++] 연산자 재정의 기본 (overator overloading)

안녕하세요. BlockDMask입니다. 오늘은 C++ 연산자 재정의 하는 방법에 대해서 알아보려고 합니다. 1. 연산자 재정의란? 2. 연산자 재정의 예제 (사용자 정의, primitive 타입 순서, 연산자 오버 로딩 우선순위) 1. C++ 연산자 재정의 방법 연산자 재정의라는 것은 우리가 일반적인 타입들의 덧셈 int 들의 덧셈 1+2 = 3, 곱셈 3 * 4 = 12 이걸 코드로 나타내면 a = 1 + 2 b = 3 * 4 이런 식으로 나타낼 수 있는데 Car라는 클래스가 있다고 했을 때 Car 객체인 c1, c2의 객체끼리의 덧셈이 일반적으로는 불가능한데, 연산자 재정의를 통해서 Car c3 = c1 + c2 가 가능하도록 할 수 있습니다. 이걸 연산자 재정의라고 하는데요. +, -, * 등의 연..

[C++] 람다 표현식, lambda에 대해서

안녕하세요. BlockDMask입니다. 오늘은 C++11, 14에서 추가된 lambda 표현식에 대해 알아보겠습니다. 1. 람다 표현식 2. 람다 표현식 사용 방법과 구조 3. 람다의 필요성, 사용 예제 1. C++ 람다 표현식 lambda는 람다 표현식, 람다 함수, 익명 함수 등의 이름으로 불립니다. 일단 람다 함수가 어떻게 생겨먹었는지 먼저 보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include #include using namespace std; // 일반 함수 정의 void sum1(int a, int b) { cout

[python] 파이썬 최대공약수, 최소공배수 함수 (gcd, lcm)

안녕하세요. BlockDMask입니다. 오늘은 파이썬에서 최대공약수와 최소공배수를 구할 수 있는 함수 gcd 함수와, lcm 함수에 대해서 알아보겠습니다. 파이썬에서는 정말 많은 게 함수로 되어있네요. 하하 1. 파이썬 gcd 함수 (최대공약수) 2. 파이썬 lcm 함수 (최소공배수) 3. 파이썬 최대공약수, 최소공배수 함수 예제 1. 파이썬 최대 공약수 함수 gcd 설명 gcd 함수는 최초로 파이썬 버전 3.5에서 추가되었으며, 지금 설명은 파이썬 버전 3.9 기준으로 설명드리겠습니다. (2021.05.12 기준 최신 버전) 파이썬 gcd 함수는 math 라이브러리에 속해있기 때문에 gcd 함수를 사용하기 위해서는 math 라이브러리를 import 해야 합니다. 1-1) math.gcd 함수 설명 * ..

[python] 파이썬 올림, 내림 함수 (ceil, floor)

안녕하세요. BlockDMask입니다. 오늘은 파이썬에서 소수점 올림과 소수점 내림을 할 수 있는 ceil과 floor 함수에 대해서 알아보려고 합니다. 1. 소수점 올림 ceil 함수 2. 소수점 내림 floor 함수 3. ceil, floor 함수 예제 1. 파이썬 ceil 함수 올림을 나타내는 ceil 함수는 math 라이브러리에 속해있습니다. 즉 해당 함수를 사용하기 위해서는 import math를 해야 합니다. > math.ceil(x) 함수 설명 함수 모양 : math.ceil(x) 함수 설명 : 인자로 들어온 x의 올림 값을 반환합니다 반환한 값은 정수 타입(int)으로 반환이 됩니다. 당연하게도 음수의 올림도 가능합니다. > ceil 함수 간단 예제 import math math.ceil(..