본문 바로가기

Python

[Python] 프로그래머스 - 가장 가까운 같은 글자 [가장 가까운 같은 글자]📝 풀이[내 풀이]def solution(s): alphabet_list = [False for i in range(97, 123)] result = [] for i, v in enumerate(s): if alphabet_list[ord(v) - 97] == False: alphabet_list[ord(v) - 97] = True result.append(-1) else: c = -1 check = s[:i] for j in range(len(check)): if v == check[c]: .. 더보기
[Python] 프로그래머스 - 둘만의 암호 [둘만의 암호]📝 풀이def solution(s, skip, index): # 알파벳 리스트와 건너뛸 문자 집합을 생성 alphabet = [chr(i) for i in range(97, 123)] skip_set = set(skip) # skip에 있는 알파벳을 제외한 유효한 알파벳 리스트를 생성 valid_alphabet = [ch for ch in alphabet if ch not in skip_set] # 각 문자를 변환할 새로운 문자열을 저장할 리스트 result = [] for char in s: # 현재 문자의 위치를 valid_alphabet에서 찾음 current_index = valid_alpha.. 더보기
[Python] 프로그래머스 - 카드 뭉치 [카드 뭉치] 📝 풀이from collections import dequedef solution(cards1, cards2, goal): cards1 = deque(cards1) cards2 = deque(cards2) for go in goal: if len(cards1) > 0 and go == cards1[0]: cards1.popleft() elif len(cards2) > 0 and go == cards2[0]: cards2.popleft() else: return "No" return "Yes" 처음에는 goal 값에 순서를 .. 더보기
[Python] 프로그래머스 - 대충 만든 자판 [대충 만든 자판] 📝 풀이def solution(keymap, targets): num = {} for key in keymap: for i, k in enumerate(key): if num.get(k): if num[k] > i+1: num[k] = i+1 else: num[k] = i+1 answer = [] for tar in targets: val = 0 for t in tar: if num.get(t): val += num[t] els.. 더보기
[Python] dataframe 두 컬럼값을 dictionary로 만들기 가끔 dataframe에 두 column 값을 dictionary로 만들고 싶을 때가 있다. 한 컬럼 값을 key 값으로 다른 컬럼 값을 value 값으로.. 주로 매칭시킬 때 사용을 하는데 여러가지 방법을 사용하다가 매우 간단한 방법을 찾아서 기록한다. dict(zip(df['col1'], df['col2'])) 이렇게 하면 {{col1_val1:col2_val1}, {col1_val2:col2_val2}, {col1_val3:col2_val3}...} 형태로 딕셔너리가 나온다. 더보기
[Python] zip 파일 압축 해제 방법 일을 하다가 처음 맡아본 zip 파일 압축 해제,, 생각보다 간단했다. import zipfile zipfile.ZipFile(zip_path).extract('annotations.xml', output_path) zipfile.ZipFile 안에 zip 파일의 경로를 넣고 .extract 에 첫번째 파라미터에는 zip 파일 안에서 압축을 해제하고 싶은 파일 명을 확장자명 포함해서 넣으면 된다. 두번째 파라미터에는 압축 해제 후 저장하고 싶은 경로를 넣으면 해당 경로에 압축이 해제된다. 아쉽게도 압축 해제 하면서 이름을 변경하여 저장하는 기능은 없었다. 그래서 해제 후 추가로 이름까지 변경해 주는 코드를 작성했다. import os, zipfile zipfile.ZipFile(zip_path).extr.. 더보기