반응형 PYTHON35 [함수] eval eval() 함수는 문자열로 표현된 파이썬 코드를 실행하여 결과를 반환하는 내장 함수입니다. 이 함수는 문자열로 표현된 파이썬 표현식, 문장 또는 프로그램을 실행할 수 있습니다. eval() 함수는 문자열로 표현된 파이썬 코드를 파싱하고 실행합니다. 실행 결과로서 표현식의 평가 결과, 문장의 실행 결과 또는 프로그램의 마지막 표현식의 결과를 반환합니다. 다음은 eval() 함수의 간단한 사용 예제입니다: expression = "2 + 3 * 4" result = eval(expression) print(result) #출력 #14 위의 코드를 실행하면 표현식 "2 + 3 * 4"가 실행되고 결과인 14가 출력됩니다. eval() 함수는 주어진 문자열을 평가하여 결과를 반환합니다. 주의해야 할 점은 ev.. 2023. 6. 17. 이진수 변환 Python에서 이진수로 표현된 문자열을 실제 이진수로 변환하는 방법에는 int() 함수를 사용하는 것이 가장 간단하고 효과적입니다. int() 함수는 주어진 문자열을 정수로 변환할 수 있으며, 변환 시에는 문자열이 이진수임을 나타내기 위해 2를 기준으로 변환합니다. 다음은 int() 함수를 사용하여 이진수 문자열을 이진수로 변환하는 예제입니다: binary_string = "101010" decimal = int(binary_string, 2) print(decimal) #출력 #42 위의 코드를 실행하면 이진수 문자열 "101010"이 실제 이진수로 변환되어 출력됩니다. int() 함수에 첫 번째 인자로 변환할 이진수 문자열을 전달하고, 두 번째 인자로 기준이 되는 진법을 나타내는 숫자 2를 전달합니.. 2023. 6. 17. fromkeys fromkeys() 메서드는 파이썬의 dict 클래스의 메서드 중 하나입니다. 이 메서드는 주어진 키(key)들로 새로운 사전(dict) 객체를 생성합니다. fromkeys() 메서드는 다음과 같은 형식으로 사용됩니다: dict.fromkeys(keys, value) 여기서 keys는 키로 사용될 요소들을 담은 반복 가능한(iterable) 객체이고, value는 생성된 사전의 모든 키에 대해 설정될 값입니다. value 인자를 생략하면 기본값인 None이 사용됩니다. fromkeys() 메서드는 각 키에 대해 값을 할당하여 새로운 사전을 생성합니다. 모든 키가 동일한 값으로 설정됩니다. keys = ['apple', 'banana', 'cherry'] fruits = dict.fromkeys(keys,.. 2023. 6. 16. gcd와 lcm 파이썬에서 최대공약수(GCD, Greatest Common Divisor)와 최소공배수(LCM, Least Common Multiple)를 구하기 위해 math 모듈에서 제공하는 gcd()와 lcm() 함수를 사용할 수 있습니다. gcd() gcd() 함수는 두 개 이상의 숫자의 최대공약수를 계산하는 데 사용됩니다. 여러 개의 인자를 받을 수 있으며, 인자들 간의 최대공약수를 반환합니다. import math result = math.gcd(a, b, ...) a, b, ...: 최대공약수를 계산할 숫자들. 최소한 두 개 이상의 숫자를 전달해야 합니다. lcm() lcm() 함수는 두 개 이상의 숫자의 최소공배수를 계산하는 데 사용됩니다. 여러 개의 인자를 받을 수 있으며, 인자들 간의 최소공배수를 반환.. 2023. 6. 16. dataclass Python의 dataclass는 typing 모듈에 속한 데코레이터입니다. 이 데코레이터를 사용하면 데이터를 담는 클래스를 간편하게 정의할 수 있습니다. dataclass를 사용하면 다음과 같은 이점을 얻을 수 있습니다: 속성의 자동 생성: dataclass를 사용하면 클래스의 속성을 선언할 필요 없이, 데코레이터를 적용한 클래스의 변수들이 속성으로 자동 생성됩니다. __init__ 메서드의 자동 생성: dataclass를 사용하면 __init__ 메서드를 정의하지 않아도 됩니다. 자동으로 생성되며, 속성을 초기화하는 역할을 합니다. __repr__, __eq__, __hash__ 등의 메서드 자동 생성: dataclass를 사용하면 __repr__, __eq__, __hash__ 등과 같은 일반적으로.. 2023. 6. 16. yield yield는 파이썬에서 함수를 제너레이터(generator)로 만들어주는 키워드입니다. 제너레이터는 값을 생성해주는 이터레이터(iterator)를 생성하는 함수입니다. 이터레이터는 next() 함수를 사용하여 값을 한 번에 하나씩 반환하는 객체입니다. yield를 사용하여 함수를 제너레이터로 만들면, 함수가 호출될 때마다 실행이 중단되고 값을 반환합니다. 그리고 함수의 상태는 유지되며, 다음에 호출될 때 중단된 지점에서부터 다시 실행됩니다. 이를 통해 제너레이터는 순차적인 값을 생성하면서 메모리를 효율적으로 관리할 수 있습니다. 제너레이터 함수를 정의할 때 yield 키워드를 사용하여 값을 생성합니다. 예를 들어, 1부터 시작하여 1씩 증가하는 값을 반환하는 제너레이터 함수를 작성해보겠습니다: def g.. 2023. 6. 16. Union-Find 유니온-파인드(Union-Find)는 집합의 분리와 합병을 효율적으로 수행하기 위한 알고리즘입니다. 이 알고리즘은 상호 배타적인(disjoint) 집합들을 관리하며, 각 집합에 대한 연산을 지원합니다. 유니온-파인드 알고리즘은 대표적으로 다음과 같은 두 가지 연산을 제공합니다: Union(합병) 연산: 두 개의 집합을 합쳐 하나의 집합으로 만듭니다. 즉, 두 개의 원소가 속한 집합을 찾아서 하나의 집합으로 합병합니다. Find(찾기) 연산: 특정 원소가 속한 집합을 찾습니다. 즉, 특정 원소가 어떤 집합에 속해 있는지를 확인합니다. 유니온-파인드 알고리즘은 대표적으로 상호 배타적 집합(disjoint set)을 관리하기 위해 사용됩니다. 상호 배타적 집합은 원소들이 중복되지 않고 하나의 집합에 속하도록 .. 2023. 6. 16. product 파이썬의 product 함수는 itertools 모듈에 속한 함수로, 주어진 여러 개의 이터러블(iterable) 객체들의 곱집합(cartesian product)을 반환합니다. 곱집합은 각각의 이터러블 객체에서 하나의 원소를 선택하여 조합한 모든 가능한 조합을 의미합니다. product 함수는 다음과 같은 형식으로 사용될 수 있습니다: itertools.product(*iterables, repeat=1) 여기서 iterables는 하나 이상의 이터러블 객체를 나타내며, repeat는 선택적 매개변수로, 각 이터러블 객체를 반복할 횟수를 지정합니다. 기본값은 1입니다. 예를 들어, 다음과 같이 product 함수를 사용할 수 있습니다: import itertools colors = ['red', 'bl.. 2023. 6. 15. ord ord() 함수는 문자의 유니코드 코드 포인트를 나타내는 정수를 반환합니다. 이 함수는 문자열 내의 각 문자에 대해 호출될 수 있습니다. 예시를 통해 ord() 함수를 이해해 보겠습니다: ch = 'A' code = ord(ch) print(code) # 출력: 65 위 예시에서는 문자 'A'의 유니코드 코드 포인트를 ord() 함수를 통해 얻었습니다. 'A'의 유니코드 코드 포인트는 65입니다. ord() 함수는 다양한 문자에 대해 사용될 수 있으며, 문자열 내의 모든 문자에 대해 코드 포인트를 얻을 수 있습니다. 2023. 6. 15. DFS(Depth-First Search)와 BFS(Breadth-First Search) DFS(Depth-First Search) DFS(Depth-First Search)는 그래프 탐색 알고리즘 중 하나로, 깊이를 우선으로 탐색하는 방법입니다. DFS는 한 정점에서 시작하여 이웃한 정점을 방문하고, 해당 정점에서 다시 깊이 우선으로 탐색을 진행합니다. 이러한 방식으로 그래프를 탐색하며, 모든 경로를 탐색하거나 탐색 조건을 만족할 때까지 진행합니다. DFS는 스택(Stack) 또는 재귀 함수를 이용하여 구현할 수 있습니다. 각 정점을 방문했는지 여부를 확인하여 중복 방문을 방지하고, 이웃한 정점 중 아직 방문하지 않은 정점을 선택하여 탐색합니다. DFS는 보통 다음과 같은 순서로 동작합니다: 시작 정점을 방문하고 방문한 정점을 표시합니다. 시작 정점과 이웃한 정점 중에서 방문하지 않은 정점.. 2023. 6. 15. 이전 1 2 3 4 다음 반응형