Programing/Python
-
[Python] SimpleHTTPServerPrograming/Python 2020. 7. 23. 12:33
Python 에서는 손쉽게 웹서버를 실행시킬수 있도록 SimpleHTTPServer 모듈을 제공하고 있다. 별다른 수정 없이도 기본 웹페이지인 index.html 를 보여준다. python -m SimpleHTTPServer 8080 만약 index.html 이 아닌 특정 html 파일을 기본 페이지로 설정하고 있다면 아래와 같이 코드를 작성 후 실행시키면 된다. 이 때 self.path 는 페이지의 directory 를 선언하는 것으로 여기에서는 테스트를 위해 /root 디렉토리에 4mb.html 파일을 임시로 복사해 놓았다. import http.server import socketserver class MyHttpRequestHandler(http.server.SimpleHTTPRequestHand..
-
[python] modify matrix in-place insteadPrograming/Python 2020. 7. 7. 22:50
문제 풀이를 하다보면 함수 리턴을 통해 결과를 도출하는 것이 아니라 인풋으로 전달되는 변수에 저장된 값을 직접 변경해야 하는 경우가 있습니다. 예를 들어 Leetcode 48번 문제의 경우 Return type은 None이로 input 으로 전달되는 matrix 리스트를 직접 조작을 해야 합니다. 그런데 이때 아래 주석처리된 matrix = ... 와 같은 선언이 함수내에 존재하게 된다면 input 으로 전달된 matrix가 아닌 함수내에서 새로 정의된 로컬 변수 matrix가 새로 생성이 됩니다. 따라서 함수가 종료된 이후에도 input으로 전달된 matrix 리스트는 아무런 변경이 없게 됩니다. 그러므로 인풋 변수를 직접 변경할 경우에는 동일 이름의 로컬변수가 생성되지 않도록 주의를 기울여야 할 것입..
-
-
set을 이용한 교집합, 차집합, 합집합Programing/Python 2019. 6. 7. 05:47
이번에는 set 모듈에서 사용할 수 있는 기능 중 하나인 교집합, 차집합 그리고 합집합에 대해서 알아보겠습니다. union, difference 그리고 intersection 함수를 이용해서 쉽게 구할 수도 있고, ^, -, | operation으로도 해당 집합을 구할 수 있습니다. 단, set 모듈의 특성상 대상 집합들은 중복되는 element는 가질 수 없습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 >>> a = {1, 2, 3, 4} >>> b = {3, 4, 5, 6} >>> a^b {1, 2, 5, 6} >>> a-b {1, 2} >>> a|b {1, 2, 3, 4, 5, 6} >>> a.union(b) {1, 2, 3, 4, 5, 6} >>> a.difference(b)..
-
itertoolsPrograming/Python 2019. 6. 6. 12:21
안녕하세요. itertools 는 확률에서 많이 사용되는 조합, 집합 등의 연산을 수행할 수 있도록 제공되는 모듈인데요. 고등학교 또는 대학교때 머리 싸매고 외웠던 순열/조합에 대한 연산을 단 한줄로 손쉽게 구할 수 있습니다. 수학적 모델링을 구현하고 계산할때 이 모듈을 많이 사용할 것 같은 느낌(?)이 드네요..ㅠ.ㅠ 학창시절 수학을 좋아하긴 했지만 시간이 지나서 다시 공부를 해야 하는 상황에는 조금 걱정이 앞서네요. 1) itertools import 하기 1 2 3 4 from itertools import combinations from itertools import combinations_with_replacement from itertools import permutations from ite..
-
print each element in a listPrograming/Python 2019. 6. 6. 05:31
안녕하세요. 리스트의 각각 element를 출력하는 방법에 대해 알아보려고 합니다. print 를 이용해 리스트를 출력하게 되면 대괄호('[') 가 함께 출력이 되는데 아래 방법으로 이를 쉽게 제거하고 element만을 화면에 출력할 수 있습니다. 1 2 3 4 A = [1, 2, 3] print (*A) --- 1 2 3 이번에는 출력되는 element 사이에 space 대신 다른 구분자를 출력해 보겠습니다. 1 2 3 4 5 6 A = [1, 2, 3] print (*A, sep='\n') --- 1 2 3 역시나 파이썬은 사용하기 편리하게 되어 있네요...ㅎㅎ