Config 일반적으로 맥북은 기본적으로 파이썬이 설치되어서 나온다. 내가 사용하는 m1 맥북 에어는 그중에서도 아예 파이썬 3가 달려서 나오는데, 이걸 업데이트 해서 사용하려고 하니 말리는 글들이 종종 있었다. 기본 설치된 파이썬은 그냥 두는 게 좋다고. 그럼 어떻게 하란 말이냐 봤더니, Homebrew를 통해 파이썬을 설치하고 업데이트 해서 개발 환경에선 해당 파이썬을 불러서 사용하는 걸 추천한다. 한 번에 정리된 글이 잘 보이지 않아서 그냥 내가 쓰기로. 일단 brew를 이용한 파이썬 설치. brew update brew를 먼저 최신버전으로 업데이트하고, brew install python 파이썬을 최신버전으로 설치한다. python --version pip --version 설치가 끝나면 각각 버..
알고리즘을 풀다가 최대공약수를 구해야 하는 문제가 나와, 별생각 없이 순진하게 아래와 같이 풀었다. import sys a, b = map(int, sys.stdin.readline().split()) x = max(a, b) y = min(a, b) while x % y != 0: z = x % y x = y y = z print(a * b // y) 유클리드 호제법을 사용해서 간단하게 풀었다고 생각하고 넘어갔는데.. 혹시나 해서 검색해보니 역시나 파이썬 math 라이브러리에는 최대공약수와 최소공배수를 구해주는 함수가 있었다! 그것도 유클리드 호제법을 이용해 최적화가 되어 있는! 적잖이 김이 빠지지만, 사용 방법은 아래와 같다. import math # 최대공약수 print(math.gcd(35, 65..
방금 알고리즘 문제를 풀다가 파이썬엔 무려 대칭차집합을 한 번에 찾아주는 연산이 있다는 사실에 충격을 받았다. 아무 생각도 없이 자바에서 푸는 것처럼 풀었다가 이게 웬걸.. 해서 문제를 하나하나 정리하기보단 집합과 관련된 연산을 정리하고 넘어가는 게 좋을 것 같아 여기에 글을 팠다. 설명할 내용은 이게 끝이고, 코드도 매우 짧지만, 강력하다. a = {2, 3, 5, 7, 9, 11} b = {1, 3, 5, 7, 9} a.add(13) a.update({17, 19}) a.remove(19) # 합집합 print(a | b) print(a.union(b)) # 교집합 print(a & b) print(a.intersection(b)) # 차집합 print(a - b) print(a.difference(..
좋아해서 몇 번이고 돌려본 영화와 이름이 같아, 별 다른 이유는 없지만 친해지고 싶었던 프레임워크. 굳이 발음기호대로 읽자면 '쟁고'정도가 된다지만 누구도 그렇게 쓰지 않을 것만 같은 프레임워크. 장고는 21세기 초반 미국에서 태어난, 파이썬으로 만들어진 백엔드 프레임워크이다. 분류하기에 따라 풀스택 프레임워크라고 불리기도 한다지만, 내가 거기까지 갈 일은 없으니 내겐 백엔드 프레임워크. 추가로 파이썬을 기반으로 한 웹 프레임워크 중엔 사용자가 가장 많은 듯해서 레퍼런스 얻기도 쉬울 것 같아 선택했다. 지금 내 수준은 이제 막 장고를 이용해 서버를 올리는 것을 체험해 본 정도라, 이번 글은 여기저기서 긁어온, 장고의 특징과 장단점에 대해 정리. Feature 장고의 특징은 대략 아래와 같다. MVT 디자..
목차 Before Init: Function vs. Method 결론부터 말하면 둘은 위와 같은 관계이다. 나도 아직 조금 헷갈리는데, 한 마디로 구분하자면 클래스 내에 선언된 함수를 메서드라고 부르는듯하다. 그 말은 뒤집어 말하면 파이썬의 함수는 자바와는 다르게 클래스 없이 독립적으로 선언할 수 있다는 말이 되며, 실제로 어제 작은 기능을 하나 구현해 보면서 느껴보기도 했다. 클래스에 소속되어 있는가의 유무에 따라 사용 코드에도 아래와 같은 차이가 발생하며, print() # 함수 a.create() # 메서드 따지고 들자면 메서드도 함수이기 때문에 그냥 함수라 지칭해도 틀린 표현은 아니게 된다. 그럼 본론으로 들어가자. Python Functions Creating 파이썬의 함수 정의는 매우 쉽고 간..
목차 Before Init 짧게 요약할 수 있을지 모르겠지만 시작해 보자. 파이썬은 굉장히 객체지향적인 프로그래밍 언어이다. 제목에 자료형이라고 적어두고 갑자기 왜 객체지향이 나오냐 하면, 파이썬에는 기본형 자료형이라는 것이 존재하지 않는다. 참조형 자료형 뿐이다. 즉 아래와 같은 변수 A가 존재할 때, A = 1 A에 저장되는 값은 숫자 1이 아니라 정수형 객체 1의 주소가 된다. 또한 위 변수 선언에서 알 수 있듯이, 파이썬은 동적으로(내부적으로 알아서) 변수의 타입을 지정한다. 물론 원하지 않으면 변경도 가능하다. 추가로 아마 다른 글에서 언급하게 되겠지만 위와 같은 정수형은 불변(immutable) 형 자료형인데, 이 말은 한 번 선언된 변수의 값을 바꿀 수 없다는 말이 아니다. 앞서 말했듯 파이..
- Total
- Today
- Yesterday
- 유럽여행
- 지지
- spring
- 칼이사
- 중남미
- 세계일주
- 리스트
- Python
- a6000
- 파이썬
- 야경
- 기술면접
- 맛집
- 남미
- Backjoon
- 자바
- Algorithm
- 스트림
- 여행
- RX100M5
- 유럽
- 세모
- 면접 준비
- java
- BOJ
- 스프링
- 알고리즘
- 세계여행
- 동적계획법
- 백준
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |