Python
11 posts
[Python] 정규 표현식과 re 모듈

🥰 참고 https://wikidocs.net/1642 😊 정규 표현식이란? 정규 표현식(regular expressions)은 복잡한 문자열을 처리할 때 사용하는 기법이다. 파이썬을 포함한 모든 곳에서 문자열을 처리 할 때 사용 정규 표현식은 정규 표현식 = 정규식 정규 표현식을 사용하면 문자열을 처리하는 코드가 간결 😁 파이썬에서 정규 표현식을 지원하는 re 모듈 파이썬에서는 정규 표현식을 사용하기 위해 re 모듈을 통한다. 파이썬에서 re 모듈을 통해 정규 표현식을 사용 re 모듈은 자동으로 설치되어 있는 표준 라이브러리 🥰 참고 😊 정규 표현식이란? 😁 파이썬에서 정규 표현식을 지원하는 re 모듈

July 13, 2023
Python
[Python] 데크(deque)와 리스트(list)

🥰 출처 박상길, 파이썬 알고리즘 인터뷰, 책만 https://idplab-konkuk.tistory.com/13 🫡데크(Deque)란? 데크는 더블 엔디드 큐(Double-Ended Queue)의 줄임말로, 글자 그대로 양쪽 끝을 모두 추출할 수 있는, 큐를 일반화한 형태의 추상 자료형이다. 리스트와 같은 배열의 형태 양방향의 queue 형태 양 쪽 방향(앞, 뒤) 모두에서 요소를 추가하고 제거 가능 파이썬에서는 collections 모듈에서 deque라는 이름으로 데크를 지원(이중연결리스트 형태) 😮데크(Deque)를 왜 사용하나요? 데크의 속도는 O(1)의 속도, 리스트의 속도는 O(n)의 속도로 데크의 속도가 훨씬 빠르다. 속도 측면에서 데크가 훨씬 빠름 데크는 스택(Stack) / 큐(Queue) 형태로 사용 가능 데크는 max length를 지정 가능 🤗데크(Deque)의 매서드 🤗데크(Deque)의 Max length 데크는 처음 선언할 때 (Max length)…

July 10, 2023
Python
[Python] max함수와 선택인자(key, default)

😍 출처 https://think-tech.tistory.com/13 https://docs.python.org/ko/3/library/functions.html#max 😉 max 함수란? 파이썬의 내장 함수로, 가장 큰 항목이나 두 개 이상의 인자 중 가장 큰 것을 돌려주는 함수이다. 가장 큰 항목을 돌려주는 경우 두 개 이상의 인자 중 가장 큰 것을 돌려주는 경우 😘 max 함수의 선택적 키워드 전용 인자(key, default) 인자 최대 값을 구하는 기준을 key 값에 설정할 수 있다. 위의 코드와 같이 기존의 max 함수는 배열의 첫 번째 인자가 기준이 된다. 이때 lambda 식을 key 값에 적용하면 다양한 순서의 인자를 기준으로 할 수 있다. 이외에도, 길이를 기준으로 최대 값을 구할 수도 있다. 인자 max함수에 빈 배열을 넣고 배열 중 가장 큰 값을 찾아 달라고 하면 오류가 발생한다. 이러한 오류의 예외처리를 위해 인자가 필요하다. 😍 출처 😉 max 함수란…

March 31, 2023
Python
[DeepLearning] PyTorch로 시작하는 딥러닝 입문 - Ch2

🥰 참고 https://sdc-james.gitbook.io/onebook/3./3.7.-modules/3.7.2.-namespace-scoping https://go-hard.tistory.com/11 https://gaussian37.github.io/dl-pytorch-deploy/ https://art28.github.io/blog/linear-algebra-1/ https://eda-ai-lab.tistory.com/394 https://bskyvision.com/896 https://wikidocs.net/60034 🤔 Ch2. 파이토치 기초(PyTorch Basic) 🙃 01) 파이토치 패키지의 기본 구성 torch 메인 이다. 란, 임의의 변수들이 모여있는 공간이다. 전체 프로그래밍 공간에서 변수들의 이름이 겹칠 수도 있으므로, 를 할당하여 변수 이름이 통용될 수 있는 범위를 제한한다. (예시 : ‘레드벨벳’ 아이린 / ‘모델’ 아이린. 여기에서 ‘레드벨벳’과 ‘모…

March 24, 2022
Python
DeepLearning
[Algorithm] 멀쩡한 사각형

🤔 문제 설명 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 따라 1cm × 1cm의 정사각형으로 잘라 사용할 예정이었는데, 누군가가 이 종이를 대각선 꼭지점 2개를 잇는 방향으로 잘라 놓았습니다. 그러므로 현재 직사각형 종이는 크기가 같은 직각삼각형 2개로 나누어진 상태입니다. 새로운 종이를 구할 수 없는 상태이기 때문에, 이 종이에서 원래 종이의 가로, 세로 방향과 평행하게 1cm × 1cm로 잘라 사용할 수 있는 만큼만 사용하기로 하였습니다. 가로의 길이 W와 세로의 길이 H가 주어질 때, 사용할 수 있는 정사각형의 개수를 구하는 solution 함수를 완성해 주세요. 😉 제한사항 W, H : 1억 이하의 자연수 😧 입출력 예 W H result 8 12 80 🥳 풀이 ❤️ 생각의 흐름 어디서 본 듯 한 수학 문제… 수…

March 17, 2022
Algorithm
Python
[Algorithm] 일정 재구성

😍 출처 파이썬 알고리즘 인터뷰 😧 문제 [from, to]로 구성된 항공권 목록을 이용해 JFK에서 출발하는 여행 일정을 구성하라. 여러 일정이 있는 경우 사전 어휘 순으로 방문한다. 🤔 예제 😉 풀이1) DFS로 일정 그래프 구성 💛 예시를 통한 풀이 = [[“JFK”,“SFO”],[“JFK”,“ATL”],[“SFO”,“ATL”],[“ATL”,“JFK”],[“ATL”,“SFO”]] 먼저 주어진 tickets의 요소들을 그래프 안에 넣어버리자! : 파이썬의 내장 모듈인 의 는 key 값을 넣었을 때 value 값이 존재하지 않더라도, 임의로 value 값을 넣어주는 기본값을 지정한 딕셔너리이다. 다시 코드로 돌아와서, 라는 이름으로 딕셔너리가 선언된 것을 볼 수 있다. 이 딕셔너리는 일반적인 딕셔너리가 아닌 딕셔너리이다. 지금부터 안에 를 차곡차곡 넣어 줄 것이다. 문제에서 중복된 일정인 경우 어휘 순으로 방문 한다고 조건을 달았으니, 를 sort 해주어 어휘 순…

March 17, 2022
Algorithm
Python
[DeepLearning] CNN 개념공부하기

🥰 출처 https://halfundecided.medium.com/딥러닝-머신러닝-cnn-convolutional-neural-networks-쉽게-이해하기-836869f88375 https://idplab-konkuk.tistory.com/13 🤔 CNN이 무엇일까? Convolutional Neural Networks의 약자인 CNN은 딥러닝에서 주로 이미지나 영상 데이터를 처리할 때 쓰인다. 이름에서 알 수 있다시피 (하나의 함수와 또 다른 함수를 반전 이동한 값을 곱한 다음, 구간에 대해 적분하여 새로운 함수를 구하는 방식 : 합성곱)이라는 전처리 작업이 들어가는 Neural Network 모델이다. 💙 CNN의 필요성과 등장 일반 DNN(Deep Neural Network)는 기본적으로 1차원 형태의 데이터를 사용한다. 때문에 2차원 형태인 이미지(ex : 1028x1028)가 입력값이 되는 경우, 이것을 flatten 시켜서 한 줄의 데이터로 만들어야 한다. 이때 생기…

March 16, 2022
Python
DeepLearning
[Algorithm] 조합의 합

😍 출처 파이썬 알고리즘 인터뷰 😧 문제 숫자 집합 candidates를 조합하여 합이 target이 되는 원소를 나열하라. 각 원소는 중복으로 나열 가능하다. 🤔 예제 😉 풀이) DFS로 중복 조합 그래프 탐색 각 원소는 중복 해서 사용가능하므로 주어진 원소의 중복 조합을 모두 구해주는 것이 핵심이다. 💛 예시를 통한 풀이 = [2, 3, 6, 7] = 7 = (중복조합을 구하는 리스트) = (target) - (하나의 조합 안의 원소들의 총 합) 이해를 쉽게 하기 위해 GIF를 먼저 보도록 하자! Untitled 재귀 호출을 반복하며 중복조합을 모두 구해나가는 것이 특징이다. 이때, 재귀 호출을 탈출하는 조건은 다음과 같다. csum < 0 인 경우 이는 target 값을 초과하였기 때문에 종료한다. csum = 0 인 경우 이는 target 값을 만족하였기 때문에 해당 중복조합을 에 추가한 뒤, 종료한다. 💛 전체 코드 😍 출처 😧 문제 🤔 예제 😉 풀이) DFS로 …

March 10, 2022
Algorithm
Python
[Algorithm] 오픈채팅방

🤔문제 설명 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고, 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다. 채팅방에 누군가 들어오면 다음 메시지가 출력된다. “[닉네임]님이 들어왔습니다.” 채팅방에서 누군가 나가면 다음 메시지가 출력된다. “[닉네임]님이 나갔습니다.” 채팅방에서 닉네임을 변경하는 방법은 다음과 같이 두 가지이다. 채팅방을 나간 후, 새로운 닉네임으로 다시 들어간다. 채팅방에서 닉네임을 변경한다. 닉네임을 변경할 때는 기존에 채팅방에 출력되어 있던 메시지의 닉네임도 전부 변경된다. 예를 들어, 채팅방에 “Muzi”와 “Prodo”라는 닉네임을 사용하는 사람이 순서대로 들어오면 채팅방에는 다음과 같이 메시지가 출력된다. “Muzi님이 들어왔습니다.""Prodo님이 들어왔습니다.…

March 03, 2022
Algorithm
Python
[DeepLearning] KoBERT 개념공부하기

😝 참고자료 https://velog.io/@seolini43/일상연애-주제의-한국어-대화-BERT로-이중-분류-모델-만들기파이썬Colab https://velog.io/@seolini43/KOBERT로-다중-분류-모델-만들기-파이썬Colab 🤔 BERT란? BERT는 약 33억 개의 단어로 pretrain 되어 있는 기계번역 모델이다. Bidirectional Encoder Representations from Transformers의 약자로, Transformers라는 기계번역 모델의 Encoder 구조를 갖는 모델이다. Transformers라는 모델의 일부분을 사용하고 성능을 업그레이드한 모델이다. 외국에서 만들어져 한국어에 대해 정확도가 다소 떨어진다. BERT 모델을 한국어에도 잘 활용할 수 있도록 만들어진 모델 중 하나가 KoBERT 모델이다. 😁 BERT 간단 정리 - Transformer란? 위의 이미지는 Transformer 모델의 구조이다. 인코더 역할을 하는…

March 02, 2022
Python
DeepLearning
[Python] Moviepy 공부하기

🥰 참고자료 https://chacha95.github.io/2019-10-24-Movipy/ https://ichi.pro/ko/moviepyleul-sayonghayeo-python-eulo-gibon-bidio-pyeonjib-sopeuteuweeoleul-mandeubnida-277842123636572 https://yujuwon.tistory.com/entry/python에서-동영상-처리하기 😏 Moviepy란? Moviepy란 파이썬을 이용한 video processing에 최적화 된 라이브러리다. 한 줄 코드로 직관적이면서도 빠르게 비디오 및 오디오의 합성이나 애니메이션, GIF 파일 생성 등을 할 수 있다. 🤔 Moviepy의 특징 간단하며 직관적이다. flexible, protable 하다. numpy와 호환 된다. stream video에 대한 작업에는 적합하지 않다. 비디오의 개수가 많을 경우(100개 이상) 적합하지 않다. ffmpeg를 이용해 비디오와 오…

March 02, 2022
Python