본문 바로가기

분류 전체보기79

python mongoDB 접속 에러 해결 - [SSL: CERTIFICATE_VERIFY_FAILED] python으로 mongoDB를 다루는 연습을 하고 있는데, from pymongo import MongoClient client = MongoClient("mongodb+srv://test:@cluster0.9dl7gbc.mongodb.net/?retryWrites=true&w=majority") 위와 같이 작성하면 [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed 오류가 발생하며 mongoDB에 접근이 되지 않는다. 원인은 네트워크 환경에 따라 추가 보안이 필요하다는 것이었고, python 패키지 certifi를 통해 해결할 수 있다. 1. python package - certifi 설치 2. tlsCAFile=certifi.where() 추가.. 2022. 10. 17.
프로그래머스 - 소수 찾기 (Python) 문제 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. n은 2이상 1000000이하의 자연수입니다. 풀이 def solution(n): answer = 0 # 1. 1은 소수가 아니므로 2부터 n까지의 수를 확인한다. for x in range(2, n+1): # 2. x가 2부터 x의 제곱근 사이의 자연수로 나누어 떨어지면, 소수가 아니다. for j in range(2, int(x ** 0.5) + 1): if x % j == 0: isPrime = False break # 3. x가 2부터 x의 제곱근 사이의 자연수로 나누어 떨어지지 않는다면, 소수이다. if isPrime == True: answer += 1 return answer 이 문제는.. 2022. 6. 23.
프로그래머스 - 약수의 개수와 덧셈 (Python) 문제 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 코드 def solution(left, right): answer = 0 num = [i for i in range(left, right+1)] for n in num: if n**0.5 == int(n**0.5): answer -= n else: answer += n return answer 풀이 약수는, 어떤 수를 나누어 떨어지게 하는 수를 말한다. 예를 들어 12의 약수는 1, 2, 3, 4, 6, 12가 되고, 각각 쌍을 이루어 1*12 / 2*6 / 3*4 = .. 2022. 6. 14.
프로그래머스 - 메뉴 리뉴얼 (Python) 문제 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 새로운 메뉴를 제공하기로 결정했습니다. 어떤 단품메뉴들을 조합해서 코스요리 메뉴로 구성하면 좋을 지 고민하던 "스카피"는 이전에 각 손님들이 주문할 때 가장 많이 함께 주문한 단품메뉴들을 코스요리 메뉴로 구성하기로 했습니다. 단, 코스요리 메뉴는 최소 2가지 이상의 단품메뉴로 구성하려고 합니다. 또한, 최소 2명 이상의 손님으로부터 주문된 단품메뉴 조합에 대해서만 코스요리 메뉴 후보에 포함하기로 했습니다. 예를 들어, 손님 6명이 주문한 단품메뉴들의 조합이 다음과 같다면, (각 손님은 단품메뉴를 2개 이상 주문해야 하며,.. 2022. 6. 11.