파이썬에서 api를 찔러보고 결과를 가져오게 하기 위해서 requests 모듈을 많이 쓰곤 합니다. 제 토이프로젝트 또한 json으로 리퀘를 받으면 처리를 적절히 해서 json으로 떨구게 됩니다. 제가 구축해 놓은 도서관 서버의 api를 보면서 어떻게 requests 모듈을 써야 할 지 간단하게 알아보도록 하겠습니다. 제약 조건이 하나 있다면, https는 적용했지만, self signed 인증서입니다. 그리고 모든 api는 json으로 응답하게 됩니다. 먼저, base_url 입니다. 보통 저 url은 겹치니 따로 base_url로 빼는 게 더 가독성이 좋은 듯 싶더라고요. 먼저 1번째 api인 /reg 입니다. POST 요청이고요. userEmail과 userName과 userPw를 보내면 중복된 i..
파이썬 검색 결과
안녕하세요. 5일 만에 돌아온 코딩개 입니다. 제가 낸 코딩 테스트 문제 중에 heap 자료구조를 이용하는 문제가 있었습니다. 1회에 유독 많이 냈던 걸로 기억하는데요. 파이썬에서는 heapq 모듈과 tuple을 이용하면 날먹 수준으로 쉽게 구현하실 수 있어요. 예제 코드를 볼게요. 먼저 2번째 줄은 prioroity queue 역할을 할 배열을 선언한 거에요. 다음에 heappush를 하는데요. pq에 tuple (1, 2)를 넣습니다. 4번째 줄에는 (-1, 3)을 넣어요. 다음에, 5번째 줄에서, pq에서 맨 위에 있는 원소를 pop 하면서 맨 위에 있었던 원소를 가져오게 됩니다. 그리고 다시 (-1, 6)을 heap에 넣고, 7번째 줄에서 pq[0]에 무엇이 들어있는지만 봅니다. heappop하고..
예전에 파이썬 배열 회전을 설명하면서 대강 짚고 넘어간 것이 하나 있었습니다. packing과 unpacking이였습니다. 이것을 간단하게 소개만 하고 넘어가겠습니다. 먼저, 매개 변수 앞에 *를 붙이면, packing이 일어납니다. 예를 들어서, 6번째 줄에 인자 [1, 2], [3, 4], [5, 6]을 보냈습니다. 그러면, 함수가 호출이 되고 매개변수로 넘어올 때, [1, 2], [3, 4], [5, 6]이 tuple로 묶어집니다. tuple은 iterable 하니까, for loop로 순회 가능합니다. 따라서, foo([1, 2], [3, 4], [5, 6])을 호출하면 [1, 2], [3, 4], [5, 6] 순으로 출력됩니다. 당연하게도 foo([1, 2, 3], [4, 5, 6])을 호출하면..
파일을 읽고 쓰는 일은 생각보다 자주 하게 됩니다. 이번 시간에는 파이썬으로 텍스트 파일을 읽는 법에 대해서 간단하게 다뤄보겠습니다. in1.txt에는 이런 내용이 저장되어 있어요. 우리의 목표는, 파일에 저장되어 있는 내용을 그대로 출력하는 것이 목표입니다. 어떻게 하면 좋을까요? 우리가 알아야 할 내용은 딱 2개입니다. with open 절과, 현재 line을 iteration으로 얻어오는 것. 먼저 with open 절은 저 같은 경우 아래와 같이 많이 씁니다. 보통, 저는 파일 객체를 다룰 때 f라고 많이 합니다. 요래 하면, file_name을 file_open_mode로 엽니다. 파일의 모드는 'r', 'w' 등이 있을 겁니다. 여기에서는 읽기 모드로 연다고 했으므로, 모드를 'r' 로 하면 ..
저번 시간에 tuple을 이용해서 다중 정렬을 손쉽게 하는 법을 배웠습니다. 특히 정수는 오름차순 반대인 내림차순으로 비교하기 위해서, 앞에 -만 붙이면 매우 간단하게 비교할 수 있어요. 그런데 문자열은 그게 되지 않습니다. 문제 상황을 보면서 어떻게 구현하면 좋을지 천천히 생각해 보도록 합시다. 개인적으로 아래 두 개의 글을 먼저 보고 오시는 게 좋아 보입니다. [관련글] tuple로 정렬 기준을 떨어트리는 방법을 알아봅시다. 안정 정렬에 대해서 알아봅시다. solution 함수를 구현해야 하는데요. list에는 튜플이 들어 있어요. 튜플의 1번째, 2번째 요소는 소문자로만 이루어진 문자열이 들어 있어요. 1차 정렬 기준은, 1번째 요소를 사전순 내림차순으로 돌립니다. 만약에, 1번째 요소가 같은 문자..
최근댓글