본문 바로가기
반응형

python96

[프로그래머스] 소수 만들기 Python Code 프로그래머스의 소수 만들기를 파이썬으로 풀어보겠다. 소수란 1과 자신으로만 나누어지는 1보다 큰 자연수이다. 이 문제에서는 소수, 조합에 대한 이해가 필요하다. python으로 문제를 풀어보겠다 문제 여기서 필요한 것은 리스트에서 3개를 뽑는 기능(조합), 소수 판별 기능이다. 여기서 조합 기능은 itertools의 combination을 사용할 것이다. 해당 함수는 아래 링크에서 확인 가능하다. https://docs.python.org/ko/3/library/itertools.html#itertools.combinations 구현 순서는 1. 조합 리스트에 가능한 조합들을 넣고 2. 해당 리스트를 돌며 합을 구해 소수인지 판별하고 3. 소수라면 answer에 더해줄 것이다. Code from iter.. 2022. 8. 4.
[머신러닝] 자연어 처리 파이썬 모듈 (NLP Python module) 자연어 처리 파이썬 모듈을 알아보기에 앞서 자연어 처리가 무엇인지 알아보겠다. 자연어 처리(NLP)란 Natural Language Processing의 줄임말이고 텍스트에서 의미있는 정보를 분석, 추출하고 이해하는 기술을 통틀어 말한다. 일상에서 사용되는 예시는 대표적으로 구글 번역기, 챗봇, 맞춤법 교정기 등이 있다. 한국어 텍스트로 NLP 작업을 하는데 여러 패키지들이 있는데 품사별 형태소로 나누는 패키지, 띄어쓰기 교정 패키지, 그리고 맞춤법 교정 패키지를 소개해보겠다. KoNLPy 이 패키지 안에는 여러 클래스들이 있다. 여기서 Kkma와 Hannanum을 사용해보겠다. https://konlpy.org/ko/latest/api/konlpy.tag/#konlpy.tag._kkma.Kkma htt.. 2022. 8. 3.
[프로그래머스] 내적 Python Code 프로그래머스 추천 문제가 아직 레벨 1로 나온다. 내적을 풀어보겠다. 문제 문제가 상당히 쉽다 바로 구현해보겠다 Code def solution(a, b): answer=0 for n1, n2 in zip(a, b): answer += n1*n2 return answer 개인적으로 zip, enumerate 함수를 많이 사용하는 편이다. zip으로 풀어서 라인 수가 적다고 생각했지만... Python은 숏코딩 덕후들이 많은 것 같다. 1. def solution(a, b): return sum([x*y for x, y in zip(a,b)]) 2. solution = lambda x, y: sum(a*b for a, b in zip(x, y)) 퍼포먼스는 lambda를 사용한 2번보다 1번이 더 좋다. 2022. 7. 29.
[프로그래머스] 폰켓몬 Python 3 Code 이번에도 프로그래머스 스쿨 추천 문제 중 하나인 폰켓몬을 풀어보겠다. 문제 예시 Code 구현은 중복을 지우는 set를 써서 포켓몬 종류를 구한 뒤 len과 비교하여 더 작은 것을 정답으로 리턴하게 했다. def solution(nums): answer = 0 if(len(nums)/2) > len(set(nums)): answer = len(set(nums)) else: answer = len(nums)/2 return answer 간결하게 짰다고 생각했는데 역시 파이썬은 기능이 많은 것을 활용해야 한다는 것을 아래 코드에서 느꼈다. def solution(ls): return min(len(ls)/2, len(set(ls))) min을 사용하면 이렇게 한 줄로 구현할 수 있다. 2022. 7. 29.
반응형