전체 글
-
파이썬 random으로 로또 번호 생성기, 경품 추첨기 만들기Python/이것저것 파이썬 2021. 11. 1. 08:11
https://docs.python.org/ko/3/library/random.html random — 의사 난수 생성 — Python 3.10.0 문서 random — 의사 난수 생성 소스 코드: Lib/random.py 이 모듈은 다양한 분포에 대한 의사 난수 생성기를 구현합니다. 정수에 대해서는, 범위에서 균일한 선택이 있습니다. 시퀀스에 대해서는, 무작위 docs.python.org random.shuffle 시퀀스 x를 제자리에서 섞습니다. shuffle을 이용해 100명 중에 (순서가 있는) 3명을 뽑아봅시다. result는 추첨함이라고 생각합시다. 추첨함에 0~99 까지 번호표를 넣고, 4번 흔든(셔플한) 뒤, 3장의 번호표를 뽑는 과정입니다. 실 생활속의 추첨 과정과 거의 같도록 코딩해 보..
-
피로도코딩 테스트/Level 2 2021. 10. 30. 22:31
https://programmers.co.kr/learn/courses/30/lessons/87946 코딩테스트 연습 - 12주차 XX게임에는 피로도 시스템(0 이상의 정수로 표현합니다)이 있으며, 일정 피로도를 사용해서 던전을 탐험할 수 있습니다. 이때, 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던 programmers.co.kr 참고 : https://comdoc.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%88%9C%EC%97%B4%EA%B3%BC-%EC%A1%B0%ED%95%A9 파이썬 순열과 조합 표준 라이브러리 파이썬에서는 순열과 조합을 사용하고 싶으면, 표준(=기본 내장) 라이브러리를 사용하면 됩니다. 순열은 itertool..
-
플라스크 입문서를 찾으신다면...Python/Flask 2021. 10. 29. 18:24
https://book.naver.com/bookdb/book_detail.naver?bid=12841991 Head First Python 최신 인지과학이론을 바탕으로 반복학습/재미요소를 모두 갖춘 파이썬 학습서 이 책은 『Head First』 시리즈 학습 원리에 기초하여 모든 페이지가 그림과 대화체를 바탕으로 구성되어 있습니다. book.naver.com 헤드 퍼스트 파이썬 Head First Python (개정판)을 추천합니다. 제가 파이썬 처음 공부할 때 읽었던 책의 개정판이 나왔길래... 뭐가 바뀐걸까 궁금해서.. 심심해서.. Yes24 북클럽 회원이니까.. 읽어봤는데, 의외로 잘 쓰여진 플라스크 입문서더군요. 이 책의 절반은 파이썬 입문, 나머지는 플라스크 입문입니다. 이전판에는 별도의 웹 프..
-
은퇴 후 재취업하면 국민연금 깎인다?계좌 2021. 10. 28. 09:39
https://www.mk.co.kr/news/economy/view/2021/06/617622/ "은퇴 후 재취업하면 국민연금 깎인다?" 굳이 전문직 종사자, 거액 자산가가 아니더라도 국민연금 개시 연령인 65세 이후에도 재취업 등을 통해 월 수백만원의 수입이 발생하는 경우가 적지 않다. 이런 사람들에게는 원래 약속한 국민 www.mk.co.kr 소득이 커지면 커질수록 국민연금 삭감액도 덩달아 커진다. 월급여 기준으로 350만~458만원은 초과소득월액의 5%, 458만~563만원은 '5만원+100만원을 초과한 소득월액의 10%', 563만~668만원은 '15만원+200만원을 초과한 소득월액의 15%' 식으로 삭감율이 올라간다. https://csa.nps.or.kr/finance/myPension01...
-
파이썬 bool()Python/이것저것 파이썬 2021. 10. 26. 15:32
파이썬에는 bool 내장 함수가 있다. 거의 쓸 일이 없긴 한데.. 가끔 리턴 문에 활용하면 깔끔하다... def has_intersection(a: set, b: set) -> bool: """ a, b 두 집합의 교집합에 원소가 하나라도 있으면 True, 없으면 False""" return bool(a.intersection(b)) print(has_intersection({1, 2}, {3, 4})) print(has_intersection({1, 2}, {2, 4})) print(has_intersection(set(), set())) print(has_intersection(set(), {1}))
-
Python doctestPython/이것저것 파이썬 2021. 10. 24. 15:32
docstring 을 이용한 간단한 테스트. import doctest def test(n): """ >>> test(1) 1211 """ return n + 120 doctest.testmod() 독스트링 내 >>> 뒤에 작성 다음 줄에는 결과를 작성하고 실행. 파이참에서는 'import doctest' 임포트 문과 'doctest.testmod()' 문을 작성하지 않아도 테스트해 줌.. 파이참에서의 결과는 다음과 같다. Failure ********************************************************************** File "C:/PyProjects/test/test.py", line 3, in test Failed example: test(1) Expec..
-
파이썬 싱글턴 패턴Python/이것저것 파이썬 2021. 10. 23. 13:31
인스턴스가 하나만 생성되어야 할 때 사용하는 패턴. 간단히 class Singleton(type): __instance = None def __call__(cls, *args, **kwargs): if cls.__instance is None: cls.__instance = super().__call__(*args, **kwargs) return cls.__instance class MyClass(metaclass=Singleton): def __init__(self, x): self.x = x m1 = MyClass(1) m2 = MyClass(2) print(m1, m2) assert m1 is m2 print(m1.x, m2.x) assert m1.x == m2.x # print(m1, m2) # ..
-
옵저버 패턴(observer pattern)Python/이것저것 파이썬 2021. 10. 23. 12:35
# observer pattern 1 class Subscriber: def __init__(self, name): self.name = name def update(self, message): print(f'{self.name}, {message}') class Publisher: def __init__(self): self.subscribers = set() def register(self, person): self.subscribers.add(person) def unregister(self, person): self.subscribers.remove(person) def dispatch(self, message): for subscriber in self.subscribers: subscriber..