파이썬
-
Python BST 바이너리 서치 트리 Traversal + Height컴퓨터/파이썬 2020. 6. 27. 12:50
class BST: def __init__(self, value): self.value = value self.left = None self.right = None def traverse(tree, arr=[]): if tree is not None: #inOrder arr.append(tree.value) traverse(tree.left, arr) #preOrder arr.append(tree.value) traverse(tree.right, arr) #postOrder arr.append(tree.value) return arr EX) 아래 그래프는 # 그래프 생성 root = BST(10) root.left = BST(5) root.left.left = BST(2) root.left.left.le..
-
Python %, modulo operator 나머지 연산자 음수컴퓨터/파이썬 2020. 6. 24. 15:49
C 에서 -1 % 10을 하면, $-1$이 나온다. #include int main() { int a = -1 % 10; printf("%d", a); } Python 에서는 $9$라는 결과가 나온다. print(-1 % 10) C 가 옳은지 Python 이 옳은지 문제가 아니라, 작동 방식이 다르다고 한다. (파이썬에서 사용되는 modulo 연산자가 수 이론에서 더 많이 사용된다고 한다.) C는 아래와 같이 작동하고, 1. A / B = A/B -> floor(A/B) = C (ex -> -1 / 10 = -0.1 => floor(-0.1) = -1) 2. A % B = (C * B - (C*B - A)) % B (ex -> -1 % 10 = (-1 * 10 + 9) % 10 = -1) 파이썬에서는 쉽..
-
Sublime Text 3 nose2 테스트 사용하기컴퓨터/파이썬 2020. 6. 21. 21:21
결과물 pip install nose2 https://docs.nose2.io/en/latest/ Welcome to nose2 — nose2 0.6.0 documentation nose2 is the successor to nose. It’s unittest with plugins. nose2 is a new project and does not support all of the features of nose. See differences for a thorough rundown. nose2’s purpose is to extend unittest to make testing nicer and easier to under docs.nose2.io https://github.com/aprudent/Nos..
-
#3 파이썬 dictionary 딕셔너리 이용컴퓨터/파이썬 2020. 6. 20. 14:18
기본 문법 키, 값, print, update(), test_dic = {'a': {'b': 'c'}, 'd': 'e'} print(test_dic['a']['b']) # 출력 : 'c' test_dic['a'].update({'o': {'f': 'e'}}) print(test_dic) # {'a': {'b': 'c', 'o': {'f': 'e'}}, 'd': 'e'} keys(), values(), in, items() test_dic = {'a': {'b': 'c'}, 'd': 'e'} print(test_dic.keys()) # dict_keys(['a', 'd']) 최상위 key들만 표시됨 print(test_dic.values()) # dict_values([{'b': 'c', 'o': {'f'..
-
Sublime Text 3 파이썬 개발 환경 만들기컴퓨터/파이썬 2020. 6. 14. 10:44
https://www.sublimetext.com/3 결과물 사용 중인 패키지 목록 보기 ↓ 더보기 사용 중인 패키지 목록 A File Icon - 탐색기 아이콘 All Autocomplete - 모든 열려있는 파일에서 매치된 글자 찾기 BracketHighlighter (아래 사진) Color Highlighter - CSS 파일 같은 곳에서 #FFF 입력하면 색깔 미리 보기 ConvertToUTF8 - 섭라임에서 지원 안 되는 인코딩 지원 (GBK, BIG5, EUC-KR, EUC-JP) Diffy - 파일 비교 Emmet - 웹 개발을 편히 할 수 있는 도구 (참고 : https://emmet.io/) Formatter - 여러 가지 언어 Beautify, Minify KiteSublime - Ki..
-
#2 파이썬 여러가지 팁컴퓨터/파이썬 2020. 5. 30. 17:05
algoexpert 공부 일지 #2 https://www.algoexpert.io/questions 1. 변수 T/F 이용 isPeak = arr[i-1] arr[i+1] 2. range -> array a = range(0, 4) a[1] = 1 # 파이썬2에선 list object # 파이썬3에선 range object를 return해서 # lazy evaluation 3. 부등호 if 3 < a < 4: a = 3.5 4. enumerate a = "ABCD" for i,j in enumerate(a): print(i,j) # (0,A), (1,B), (2,C), (3,D) 5. 두 변수 바꾸기 a = 3, b = 4 a, b = b, a 6. 두 array 여집합(?) A-B a = [1, 2, ..
-
#1 파이썬 정규 표현식 공부 (regular expression)컴퓨터/파이썬 2020. 5. 11. 22:33
string 의미 \d 숫자 [0-9] \D 숫자 아닌 것 [^0-9] \s [ \t\n\r\f\v ] \S [^\s] \w 문자+숫자 [a-zA-Z0-9] \W [^\w] [ ] 문자 클래스 . \n 제외한 모든 문자 매치 (a.b = a+모든+b) * 반복 : 0번 이상 무한 반복 (a*b = a + a*N + b) + 반복 : 1번 이상 무한 반복 (a+b = a + a*N + b) {m,n} 반복 : m~n번 반복 (a{2}b = a + aa + b) {,2} = 0~2 {2, } = 2~무한 ? 반복 : {0, 1} 의미 (a?b = a + a(없어도 됨) + b) ?P 하위 표현식 이름 붙히는 법 (?P\w{3}) \g 하위 표현식 group a.sub("(\g)", data) ( 식 ) 하위..
-
코로나 바이러스 현황을 파이썬 웹 request해서 GUI로 만들기컴퓨터/파이썬 2020. 5. 8. 09:33
COVID-19 STATUS GUI 개발 일지 정리 (다 처음 써봐서 더러움) TO-DO: 전날 비해 몇 명 늘었는지 + 붙일 것 사용 도구 : PyQt5, BeautifulSoup, pyinstaller 코로나 현황 request 사이트 : https://www.worldometers.info/coronavirus/country/south-korea/ 우선 BeautifulSoup를 이용해 Last updated 문구와, 확진, 사망, 회복자 수를 parsing 하는 법 1. Parsing import requests from bs4 import BeautifulSoup req = requests.get("https://www.worldometers.info/coronavirus/country/sout..