Python 4

[Python] 파이썬에서의 eval() 함수: 표현식을 실행하는 강력한 도구

파이썬은 강력하고 다양한 기능을 제공하는 프로그래밍 언어입니다. 그 중에서도 eval() 함수는 특히 유용한 도구 중 하나입니다. 이 함수는 문자열로 표현된 파이썬 표현식을 받아들여 실행하는 데 사용됩니다. 이 글에서는 eval() 함수의 기본적인 사용법과 주의할 점에 대해 알아보겠습니다. eval() 함수의 기본 구문eval() 함수의 기본 구문은 다음과 같습니다.eval(expression[, globals[, locals]]) 여기서 expression은 실행할 파이썬 표현식을 나타냅니다. 이 표현식은 문자열로 제공되어야 합니다. globals와 locals는 선택적 매개변수로, 각각 전역 및 지역 네임스페이스를 나타냅니다. 이러한 매개변수를 지정하지 않으면 eval()은 현재 호출된 위치의 네임스..

Python 2024.04.29

[Python] 파이썬 순열, 조합, 중복 순열, 중복 조합  itertools 함수 (permutations, combinations, product, combinations_with_replacement)

순열/조합/중복 순열/중복 조합이란? 순열 (nPr) 서로 다른 n개 중에 r개를 선택해 일렬로 나열하는 경우의 수 (순서 상관 O) 조합 (nCr) 서로 다른 n개 중에 r개를 순서 생각 안하고 선택하는 경우의 수 (순서 상관 X) 중복 순열 (n∏r) 중복 가능한 n개 중에 r개를 선택해 일렬로 나열하는 경우의 수 (순서 상관 O) 중복 조합 (nHr) 중복 가능한 n개 중에 r개를 선택하는 경우의 수 (순서 상관 X) 파이썬에서 함수로 구현하기 순열 : itertools.permutations(list, r) 서로 다른 n개에서 r개를 뽑아 일렬로 나열(순서O) import itertools arr = ['a', 'b', 'c'] nPr = itertools.permutations(arr, 2) #..

Python 2024.04.15

[Python] 파이썬의 heapq 모듈: 힙(Heap) 자료구조 활용 : 우선순위 큐, 최대 최소 등

우리는 종종 데이터를 정렬하거나 최소/최대값을 빠르게 찾아야 할 때가 있습니다. 파이썬의 heapq 모듈은 이러한 작업을 위해 사용되는 유용한 도구 중 하나입니다. 이번 포스팅에서는 heapq가 무엇인지, 어떤 함수들이 있는지, 그리고 실제 예제를 통해 어떻게 사용하는지 살펴보겠습니다. 힙(Heap)이란? 힙은 특별한 종류의 이진 트리로, 부모 노드가 자식 노드보다 작거나 큰 값을 가지는 자료구조입니다. 보통은 최소 힙(min heap)이나 최대 힙(max heap)으로 사용됩니다. 최소 힙은 부모 노드가 항상 자식 노드보다 작거나 같은 값을 가지며, 최대 힙은 부모 노드가 항상 자식 노드보다 크거나 같은 값을 가집니다. heapq란? heapq 모듈은 이진트리 기반의 최소 힙 자료구조를 제공하는 파이썬..

Python 2024.04.14

[Python] 파이썬 모듈 collections의 deque 덱 큐 사용법

deque 덱(double-ended queue)양쪽 끝에서 데이터의 처리(삽입, 삭제)가 가능한 양방향 자료형두 개의 포인터를 사용하여, 양쪽에서 삭제와 삽입 가능큐와 스택을 합친 형태라고도 생각할 수 있음스택(stack)처럼 써도 되고 큐(queue)처럼 써도 된다.파이썬에서 collections.deque파이썬에서의 collections 모듈의 deque는 리스트와 비슷하다.아래와 같이 불러올 수 있다.from collections import dequedeque를 리스트 대신 사용하면 얻는 가장 큰 장점!💡 속도가 리스트에 비해 굉장히 빠르다! List = O(N) vs deque = O(1)pop(0)과 같은 메서드를 수행할 때 리스트라면 O(N)의 연산을 수행하지만, deque는 O(1)의 ..

Python 2024.04.14