분류 전체보기

파이썬에서 문자열을 활용하는 다양한 방법들 중 자주 사용되는 방법들에 대해서 정리해보도록 하겠습니다 s = "Python is Easy" s.upper() # 대문자로 변경 # PYTHON IS EASY s.lower() # 소문자로 변경 # python is easy s.split() # 공백 기준 문자열 나누기 # ['Python', 'is', 'Easy'] s.upper() # 공백 포함 문자열 나누기 # ['Python is Easy'] s_1 = '123' s_2 = 'abc' s_3 = s_1 + s_2 s_1.isdigit(), s_2.isdigit() # 숫자로만 구성되어 있으면 True, 아니면 False # True False s_1.isalpha(), s_2.isalpha() # 문자..
Problem) 간단한 문자열 문제입니다. 코딩 문제로 문자열과 정규식 관련 문제를 은근히 자주 마주칠 수 있는데요. 이번 문제를 통해서 다시 한번 문자열 관련 다양한 처리 방법들에 대해서 정리해보면 좋을 것 같네요. Solution) # 문자열 활용 솔류션 class Solution: def isPalindrome(self, s: str) -> bool: strs = [] for char in s: if char.isalnum(): strs.append(char.lower()) while len(strs) > 1: if strs.pop(0) != strs.pop(): return False return True # 정규식 활용 솔류션 import re class Solution: def isPalind..
Docker를 사용해보긴 했지만 아직 부족한 부분이 많다는 생각을 하고 있는데 때마침 Medium에서 좋은 정리글을 발견하여 이 시점을 계기로 더 전문적으로 Docker를 사용하기 위한 포스팅들을 할 예정입니다. 프로그래머에게 "environment"란 개념은 정말 중요하면서도 관리하기가 어려운 부분 중 하나입니다. 그 이유 중 하나는 코드에 사용되는 라이브러리가 지속적으로 업데이트 되고 그에 따라서 하나의 라이브러리 버전 업데이트가 코드에 영향을 끼치고 에러를 발생시킬 수 있기 때문입니다. 특히나 동시에 여러 프로젝트를 진행하고 있다면 이러한 문제들은 더욱 복잡해집니다. 또한, 개발한 코드를 다른 OS에서 동작하도록 하려면 코드를 전부 다 수정해야 할 수도 있습니다. 이러한 문제를 간단하게 만들어 주는..
https://www.youtube.com/watch?v=IOrmS8vJDQw&feature=youtu.be if bad things happen, move on to next as fast as possible. you shrink the time you spend in those bad scenarios and it gives more time for the good. as a result, the good outweighs the bad, your average increases and that's just how the math works. bad things were just small parts of my day and small parts of my average
solution for Container With Most Water Problem) Solution) 2개의 포인터를 활용해서 시간 복잡도 O(n)에 끝낼 수 있다. max_water 변수에는 각 단계별 최대 물의 양을 저장한다. x, y 포인터 초기화하고 각각 x는 시작점, y는 끝점에 위치하고 하나씩 옮기며 최대 물의 양을 계산하고 max_water의 값과 비교하여 최종 최대 물의 양 값을 얻는다. 이때 포인터를 옮기는 과정에서 x, y 포인터가 가르키는 막대의 길이를 비교하여 길이가 짧은 막대의 포인터를 x는 +1, y는 -1로 한칸씩 옮겨야 한다. Example의 예를 들면 최초 x는 0 (height[0] = 1)을 가르키고 y는 8 (height[8] = 7)을 가르킨다. 여기서 물의 양을 ..
solution for Two City Scheduling Problem) Solution) 문제에서 각 cost간의 차이 값을 구했을 때, 차이 값이 작으면 A 도시로 차이값이 크면 B 도시로 가는 것이 비용상 더 효율적이다. 즉 문제에서 제공한 예제에 적용해서 4명의 각 비용의 차이 값을 계산하면 [-10, -170, 350, 10]이 되고 이를 오름차순으로 정렬하면 [-170, -10, 10, 350]이 된다. 여기서 우리는 정렬된 리스트를 기준으로 좌측에서 A로 우측에서 B로 한명씩 보내게되면 최소 비용으로 모든 사람들을 A, B 도시로 반반씩 보낼 수 있게 된다. 특별한 알고리즘에 대한 지식보다는 문제에 대한 이해와 해석 능력이 필요한 문제인 것 같다. class Solution: def two..
solution for Invert Binary Tree Problem) Invert a binary tree. Example) Solution) class Solution: def invertTree(self, root: TreeNode) -> TreeNode: if root: root.left, root.right = self.invertTree(root.right), self.invertTree(root.left) return root else: return None Reference) Recursion (Recursive Function)
이번 포스트에서는 정말 간단하게 python에 pickle을 활용하여 데이터를 저장하고, 저장된 데이터를 불러오는 코드를 알아보겠습니다. pickle은 파이썬의 모든 객체(object)에 대해서 있는 그대로 저장할 수 있는 모듈입니다. pickle은 객체를 바이너리 파일에 저장하기 때문에 아래와 같이 파일을 읽을 때 'wb', 'rb' 처럼 바이너리 형식을 사용해야 합니다. pickle.dump / pickle.load import pickle temp_dict = {'name': 'S', 'id': 1} # 데이터 저장 with open('filename.pkl', 'wb') as f: pickle.dump(temp_dict, f, protocol=pickle.HIGHEST_PROTOCOL) # 데이터..
sssssein
'분류 전체보기' 카테고리의 글 목록 (6 Page)