전체 글(273)
-
[Python] Generator, Enumerate, Zip
Generator Iterator의 특별한 종류 각 멤버를 생성하는 방법을 저장한 후, 반복을 통해 요청될 때만 각 멤버를 한 번에 하나씩 생성합니다. 그렇기에 많은 메모리 공간이 필요하지 않습니다. for문에서 자주 쓰이는 range()가 for 문에서 활용될 때는 Generator로 변환되어 실행됩니다. [0, 1, 2, 3, 4] # 0, 1, 2, 3, 4 모든 값을 메모리에 저장 range(5) # 0 ~ 4의 수열을 생성하는데 필요한 명령만 저장 Generator 만들기 return 키워드 대신, yield 키워드를 이용하면 만들 수 있습니다. def EventNumbers(): n = 1 while True: if (n % 2 == 0) : yield n n += 1 g = EvenNumbe..
2022.06.12 -
[Python] Iterable, Iterator
Iterables 기본 설명 iterable 또는 interable container는 한 번에 하나씩 멤버를 반환할 수 있는 모든 Python 객체 for 문에서 반복을 사용할 수 있도록 해줍니다. for 문에서 활용될 때, Python 내부적으로는 iter() 함수를 이용하여 Iterator라는 객체를 반환하여 사용합니다. Iterator는 next() 함수를 이용하여 다음 멤버를 반환할 수 있습니다. studentList = ['Tom', 'Jack', 'Jane', 'Susan'] iteratorObject = iter(studentList) # iterator 생성 print(next(iteratorObject)) # 'Tom' print(next(iteratorObject)) # 'Jack' ..
2022.06.12 -
[Python] Lambda 식
Lambda Expression 개념 무명 함수(Anonymous function)을 만들 때 사용하며, 특별한 이름이 없는 1회성 함수를 만들 때 사용한다. 함수를 선언하는 def 키워드 대신, lambda 키워드를 사용하여 선언한다. lambda arguments : expression 사용법 다음 두 코드는 동일한 기능을 수행하는 코드이다. # 일반 함수 생성 def AddPlusOne(x, y) : return x + y + 1 # 람다식 AddPlusOne = lambda x, y : x + y + 1 실제로 사용해보면 다음과 같다. AddPlusOne = lambda x, y : x + y + 1 result = AddPlusOne(1, 2) print(result) # 3 출력 (lambda..
2022.06.12 -
[Python] While / else
while / else Python에 있는 독특한 문법 while 문의 반복 조건이 False일 경우, else 문을 실행한다. while 문에 아예 진입하지 않았을 경우, else 문이 실행된다. x = 5 while x != 5: print("while 문 실행") else: print("else 문 실행") # "else 문 실행" 출력 while 문이 정상적으로 종료될 경우, else 문이 실행된다. x = 0 while x < 5: x += 1 else: print("else 문 실행") # "else 문 실행" 출력 단, break를 통해 강제로 while 문을 빠져 나올 경우에는 else 문이 실행되지 않는다. x = 0 while x < 5: x += 1 if x == 3: break el..
2022.06.12 -
[Unity 3D] 애니메이션 Root Motion이 Transform값을 변경시키며 발생한 버그 해결하기
1. 루트 모션(Root Motion)이란? 루트 모션(Root Motion)은 오브젝트의 위치와 회전을 애니메이션이 제어할 수 있도록 허용하는 것을 말합니다. 루트 모션이 활성화된 애니메이션이라면, 해당 애니메이션이 적용된 오브젝트의 트랜스폼(Transform) 값은 영향을 받아 변하게 될 겁니다. 예를 들어, 루트 모션이 적용된 걷는 애니메이션(WALK)은 캐릭터가 걷는 것에 따라 위치 값도 변하게 됩니다. 루트 모션이 적용되지 않았다면 캐릭터는 제자리 걸음을 하겠지요. 2. 루트 모션이 일으킬 수 있는 문제점 물론 스크립트 코드를 작성하여 움직임을 구현하는 것보다 애니메이션을 통해 움직임을 구현하는 것이 훨씬 더 자연스럽습니다. 특히나 시네마틱 영상을 제작하는데엔, 루트 모션이 더욱 더 현실같은 자..
2022.05.24 -
[BOJ] 10026번 | 적록색약 (Python3)
🔗문제 보러가기 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 문제 설명 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다. 그림은 몇 개의 구역으로 나뉘어져 있는데, 구역은 같은 색으로 이루어져 있다. 또, 같은 색상이 상하좌우로 인접해 있는 경우에 두 글자는 같은 구역에 속한다. (색상의 차이를 거의 느끼지 ..
2022.05.14