zenn.skin 무료버전 배포중!
자세히보기

전체 글 182

Python/Syntax
[Python] while ~ else문

if ~ else문을 이용하면 if 조건식에 있는 조건을 만족하지 못할 때 else에 있는 실행문이 실행된다. if 조건문1: 실행문1 else: 실행문2 이런 조건을 while문에 대해서도 동일하게 적용할 수 있다. while 조건문: 실행문1 ... if ~: break else: 실행문2 만약 while 조건문이 아니라 내부에서 break에 의해 반복문이 멈추면 else에 해당하는 실행문은 실행되지 않는다. 반면 while 조건문에 의해 while문이 멈춘다면 else에 있는 실행문이 실행되게 된다. # 백준 16952: A -> B a, b = map(int, input().split()) cnt = 0 while a != b: if b % 10 == 1: b //= 10 elif b % 2 ==..

CS/알고리즘
[Python] BFS/DFS (Breadth-First Search, Depth-First Search) 구현

1. 그래프의 표현 그래프를 표현할 때는 해당 노드가 어떤 노드와 이어져 있는지를 저장한다. 인접 행렬을 이용해 노드의 관계를 나타내면 메모리의 낭비가 크기 때문에 보통 이어져 있는 노드들의 관계만을 나타내는 방법을 사용한다. # dict를 이용한 그래프 표현 table = {1: [2, 3, 8], 2: [1, 7], 3: [1, 4, 5], 4: [3, 5], 5: [3, 4], 6: [7], 7: [2, 6, 8], 8: [1, 7]} # 리스트를 이용한 그래프 표현 table2 = [[2, 3, 8], [1, 7], [1, 4, 5], [3, 5], [3, 4], [7], [2, 6, 8], [1, 7]] 생성을 할 때는 아래와 같은 방법으로 생성해줄 수 있다. # dict table = {i +..

CS/알고리즘
유클리드 호제법

1. 유클리드 호제법 유클리드 호제법은 2개의 자연수의 최대공약수를 구하는 알고리즘 a와 b가 주어질 때, a를 b로 나눈 나머지가 r이라 할 때, a와 b의 최대공약수는 b와 r의 최대공약수와 같다. 이 과정을 반복하여 나머지가 0이 될 때까지 반복하면 a와 b의 최대공약수를 구할 수 있다. 2. 예제 ① a = 54, b = 36 r1 = 54 % 36 = 18이므로 ② a = 36, b = 18 r2 = 36 % 18 = 0이다. ③ a = 18, b = 0 ∴ 최대공약수는 18이 된다. def gcd(a, b): while b != 0: r = a % b a, b = b, r return a

CS/알고리즘
배수판정법

배수 판정법 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 배수 판정법은 배수인지 확인하려는 수의 배수가 맞는지 간단히 확인하는 절차이다. 일반적으로 정수 m , n {\displaystyle m,n} 에 대해 m {\displaystyle m} 이 n {\displaysty ko.wikipedia.org 확인하려는 수가 배수인지 확인하기 위해 사용하는 방법이다. 1: 모든 수는 1의 배수 3: 각 자리 수의 합이 3의 배수인 수 4: 가장 끝 두 자리수가 0이거나 4의 배수인 수 6: 2와 3의 공배수, 짝수이면서 각 자리 수의 합이 3의 배수인 수 7: 일의 자리를 두 배 한 것을 나머지 수에서 뺀 결과가 0 또는 7의 배수가 나오는 수 8: 가장 끝 세 자리수가 0이거나 8의..

Python/Syntax
[Python] glob

1. glob 특정 패턴이나 확장자를 가진 파일들을 불러올 때 사용할 수 있다. glob 모듈의 glob를 사용하면 조건에 맞는 파일명들을 리스트 형태로 반환받을 수 있다. 정규 표현식을 사용할 수 없지만 *나 ? 같은 와일드 카드를 사용할 수 있다. 2. 사용 from glob import glob file_list = glob('cat?.txt') print(file_list) for file in file_list: print(file) from glob import glob file_list = glob('cat1*') for file in file_list: print(file)

Python/Syntax
[Python] itertools (순열, 조합)

python에서 제공하는 itertools를 사용하면 효율적으로 순열과 조합을 구할 수 있습니다. 1. 조합(combinations) 첫번째 파라미터로 iterable 객체를 받고, 두번째 파라미터는 선택할 원소의 개수를 입력받습니다. from itertools import combinations A = [2, 1, 3] for i in combinations(A, 2): print(i) for i in combinations(A, 3): print(i) 2. combinations_with_replacement 중복을 허용하여 입력받은 iterable 객체 내 원소로 만들 수 있는 모든 조합을 구할 수 있습니다. from itertools import combinations_with_replacemen..

Issues
[온라인 세미나] 파이썬과 함께 사용하는 매트랩

[온라인 세미나] Python 과 함께 사용하는 MATLAB Python을 사용할 경우 C/CUDA 코드 생성, 대화형 대시보드 구축, 응용 프로그램 병렬화, 신호 및 이미지 처리, 컴퓨터 비전, 포트폴리오/리스크 관리 등의 많은 어려움이 있습니다. 이를 위해 엔터프 kr.mathworks.com mathworks에서 MATLAB과 파이썬, 텐서플로우간의 상호 운용에 대한 세미나를 진행합니다. 텐서플로우는 아직 찍먹 정도는 해봤지만 매트랩과 같이 사용해볼 생각은 안해봤었는데 이번 기회에 한 번 들어보는 것도 좋을 것 같습니다. 세미나는 2개 세션으로 진행되는데, 첫 세션에서는 파이썬과 매트랩을 연결해서 사용하는 방법과 관련해 진행됩니다. 두번째 세션에서는 텐서플로우와 매트랩 사용자간의 협업 방안, 임베디..