파이썬의 스크립트 특성과 객체 지향 프로그래밍 모델 때문에 파이썬에서 "main" 메소드의 개념은 C나 C++의 main 함수와 완전히 다르다. C 또는 C++는 실행하기 위해 반드시 main 함수가 필요하지만 파이썬은 그렇지 않다. 그러나 스크립트를 독립 실행형 프로그램으로 실행할 때 시작점을 제공하고 스크립트를 다른 스크립트의 모듈로 가져올 때 실행해서는 안 되는 코드 부분을 구분하기 위해 C 또는 C++의 main 함수와 유사한 구조가 아래처럼 파이썬에서 자주 사용된다. def main(): # Your main code here print("Hello, world!") if __name__ == "__main__": main() def main() : 파이썬에서 main이라는 함수를 정의하는 부분..
해결책 : 사용하는 플랫폼(Windows, Linux 등)에 따라 동작하지 않는 해결책도 있음에 유의 기존 일반 string을 raw string으로 변환 dataset_dir = r"C:\Users\miche\Documents\school\jaar2\MIK\2.6\vektis_agb_zorgverlener" \을 /으로 치환 dataset_dir = "C:/Users/DeePak/Desktop/myac.csv" \를 \\으로 치환 dataset_dir = "C:\\Users\\DeePak\\Desktop\\myac.csv" 원인 : '\' (백슬래시) 는 다음에 오는 문자에 따라 특수 문자로 인식을 할 수 있다. 예를 들어, 에러를 살펴보면 '\U'는 Unicode로 인식이 되기 때문에 기대한 경로의..
Singly Linked List 구현은 매우 간단하고, 자주 사용하게 되므로 알아두는 것이 좋다. # Singly Linked List class 정의 class Node: def __init__(self, val): self.val = val self.next = None # '0'이라는 데이터를 담은 head와 cursor 선언 cur = head = Node(0) # '1'이라는 데이터를 담은 새로운 Node 선언해 head의 다음으로 연결 new = Node(1) cur.next = new cur = new # head부터 출력하면 0, 1을 출력으로 확인 가능 test = head while test: print(test.val) test = test.next
set 역시 list를 비롯한 다른 collection과 마찬가지로 다루기 위한 함수들이 존재하고 대표적으로 사용되는 함수들은 아래와 같다. add(elem) : 요소 elem을 set에 추가 remove(elem) : 요소 elem을 set에서 제거하는데 존재하지 않을 수 KeyError 발생 discard(elem) : 요소 elem을 set에서 제거하지만 없어도 error는 발생하지 않음 pop() : 임의의 요소를 반화하면서 제거. set가 비어있다면 KeyError 발생 clear() : set의 모든 요소 제거 참고 - https://docs.python.org/3/library/stdtypes.html#set-types-set-frozenset
# set 선언 s = set() # list로 casting l = list(s) 파이썬 공식 사이트에 따른 set에 대한 설명은 아래와 같다. : set 객체는 해시 가능한 별개의 객체들의 정렬되지 않은 컬렉션(collection이다. 멤버십 확인, 배열에서 중복 제거, 교집합, 합칩합, 차집합, 대칭 합 같은 수학 연산 계산 등에 주로 사용된다. 다른 컬렉션과 마찬가지로 set는 x in set, len(set), for x in set를 지원한다. 정렬되지 않은 컬렉션이기에 set는 요소의 위치나 삽입 순서를 기록하지 않는다. 따라서 set는 index나 slice 또는 기타 순서에 대한 동작을 지원하지 않는다. 현재 기본 제공 set 유형에는 set와 frozenset 두 가지가 있다. set ..
매번 파이썬 2차원 배열 선언이 헷갈린다. 2차원 배열 선언은 아래와 같고, Shallow Copy(얕은 복사)를 주의해야한다. 우선 Shallow Copy를 고려하지 않은 일반적인 2차원 배열은 아래와 같이 선언한다. Array = [[0 for column in range(9)] for row in range(9)] 혹은 아래와 같이 선언할 수 도 있다. Array = [[0] * 9] for row in range(9)] 다음은 Shallow Copy를 적용한 2차원 배열 선언이다. Array = [[0] * 9 * 9] 위와 같이 2차원 배열을 선언할 경우, [0] * 9라는 배열을 그대로 복사해 생성하는 것으로 Array[0][0]의 값을 변경할 경우 Array[1][0]부터 Array[8][0..
파이썬 코드를 작성하던 중 아래와 같은 에러가 발생했다. : TypeError: 'int' object is not subscriptable 위 에러는 배열에 존재하지 하지 않는 구역에 접근하려고 할 때 발생하며, 예시는 아래와같다. arr = [1, 2, [3, 4]] print(arr[0][1]) 실행 결과: TypeError Traceback (most recent call last) in 1 arr = [1, 2, [3, 4]] ----> 2 print(arr[0][1]) TypeError: 'int' object is not subscriptable * subscript: 아래에 기입한, 아래와 적은 문자[숫자, 기호] 참고 - https://en.dict.naver.com/#/entry/enk..
파이썬의 for문은 C언어의 for문과 다르다. C언어에 익숙해 같은 방식으로 선언하니 결과가 다르게 나와 파이썬에서 for문의 원리를 찾아봤거 파이썬 위키에서 차이점을 알게 됐다. 파이썬 위키 설명 중 아래와 같은 문구가 있다. for loops are used when you have a block of code which you want to repeat a fixed number of times. 파이썬의 for문은 고정된 횟수만큼 반복된다. 다음 예시에서 C언어와 차이를 확연하게 확인할 수 있다. 1. C언어(C language) for(i=0; i
파이썬 알고리즘 문제를 풀던 중 이중 반복문을 탈출하는 방법을 구글링하다 error를 발생시켜 탈출하는 방법을 알게 됐고, 예시에서 pass를 알게 됐다. 다음은 해당 예시다. class LoopBreak(Exception): pass try: for i in range(5): for j in range(5): if i == 1 and j == 1: raise LoopBreak() except LoopBreak: pass W3Schools에 따르면 pass의 정의는 다음과 같다. pass : The pass statement is used as a placeholder for future code. When the pass statement is executed, nothing happens, but y..
- Total
- Today
- Yesterday
- 안드로이드
- ml
- C++
- The Economist
- defaultdict
- leetcode
- Computer Graphics
- 리트코드
- machine learning
- join
- Python
- 티스토리챌린지
- java
- 딕셔너리
- 머신 러닝
- 오블완
- The Economist Espresso
- 이코노미스트 에스프레소
- I2C
- min heap
- Hash Map
- 이코노미스트
- DICTIONARY
- 투 포인터
- Android
- vertex shader
- socket programming
- 파이썬
- 소켓 프로그래밍
- tf-idf
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |