Language/Python
-
파일 열기 (Open) open() 함수를 이용하여 파일을 열 수 있습니다. 읽기 전용으로 열고 싶으면 'r', 쓰기 전용으로 열고 싶으면 'w'을 인자로 줍니다. _file = open(file = "ex1.csv", mode = 'r') ... # 작업을 마쳤다면 닫아줍니다. _file.close() 파일 읽기 (Read) readline() 메소드를 이용하여 한 줄씩 차례대로 읽을 수 있습니다. _file.readline() # 'a, b, c, d, message\n' _file.readline() # '1, 2, 3, 4, hello\n' _file.readline() # '5, 6, 7, 8, world\n' _file.readline() # '9, 10, 11, 12, foo\n' _file..
[Python] 파일 입출력 (File I/O) + with 문법파일 열기 (Open) open() 함수를 이용하여 파일을 열 수 있습니다. 읽기 전용으로 열고 싶으면 'r', 쓰기 전용으로 열고 싶으면 'w'을 인자로 줍니다. _file = open(file = "ex1.csv", mode = 'r') ... # 작업을 마쳤다면 닫아줍니다. _file.close() 파일 읽기 (Read) readline() 메소드를 이용하여 한 줄씩 차례대로 읽을 수 있습니다. _file.readline() # 'a, b, c, d, message\n' _file.readline() # '1, 2, 3, 4, hello\n' _file.readline() # '5, 6, 7, 8, world\n' _file.readline() # '9, 10, 11, 12, foo\n' _file..
2022.06.13 -
Generator Iterator의 특별한 종류 각 멤버를 생성하는 방법을 저장한 후, 반복을 통해 요청될 때만 각 멤버를 한 번에 하나씩 생성합니다. 그렇기에 많은 메모리 공간이 필요하지 않습니다. for문에서 자주 쓰이는 range()가 for 문에서 활용될 때는 Generator로 변환되어 실행됩니다. [0, 1, 2, 3, 4] # 0, 1, 2, 3, 4 모든 값을 메모리에 저장 range(5) # 0 ~ 4의 수열을 생성하는데 필요한 명령만 저장 Generator 만들기 return 키워드 대신, yield 키워드를 이용하면 만들 수 있습니다. def EventNumbers(): n = 1 while True: if (n % 2 == 0) : yield n n += 1 g = EvenNumbe..
[Python] Generator, Enumerate, ZipGenerator Iterator의 특별한 종류 각 멤버를 생성하는 방법을 저장한 후, 반복을 통해 요청될 때만 각 멤버를 한 번에 하나씩 생성합니다. 그렇기에 많은 메모리 공간이 필요하지 않습니다. for문에서 자주 쓰이는 range()가 for 문에서 활용될 때는 Generator로 변환되어 실행됩니다. [0, 1, 2, 3, 4] # 0, 1, 2, 3, 4 모든 값을 메모리에 저장 range(5) # 0 ~ 4의 수열을 생성하는데 필요한 명령만 저장 Generator 만들기 return 키워드 대신, yield 키워드를 이용하면 만들 수 있습니다. def EventNumbers(): n = 1 while True: if (n % 2 == 0) : yield n n += 1 g = EvenNumbe..
2022.06.12 -
Iterables 기본 설명 iterable 또는 interable container는 한 번에 하나씩 멤버를 반환할 수 있는 모든 Python 객체 for 문에서 반복을 사용할 수 있도록 해줍니다. for 문에서 활용될 때, Python 내부적으로는 iter() 함수를 이용하여 Iterator라는 객체를 반환하여 사용합니다. Iterator는 next() 함수를 이용하여 다음 멤버를 반환할 수 있습니다. studentList = ['Tom', 'Jack', 'Jane', 'Susan'] iteratorObject = iter(studentList) # iterator 생성 print(next(iteratorObject)) # 'Tom' print(next(iteratorObject)) # 'Jack' ..
[Python] Iterable, IteratorIterables 기본 설명 iterable 또는 interable container는 한 번에 하나씩 멤버를 반환할 수 있는 모든 Python 객체 for 문에서 반복을 사용할 수 있도록 해줍니다. for 문에서 활용될 때, Python 내부적으로는 iter() 함수를 이용하여 Iterator라는 객체를 반환하여 사용합니다. Iterator는 next() 함수를 이용하여 다음 멤버를 반환할 수 있습니다. studentList = ['Tom', 'Jack', 'Jane', 'Susan'] iteratorObject = iter(studentList) # iterator 생성 print(next(iteratorObject)) # 'Tom' print(next(iteratorObject)) # 'Jack' ..
2022.06.12 -
Lambda Expression 개념 무명 함수(Anonymous function)을 만들 때 사용하며, 특별한 이름이 없는 1회성 함수를 만들 때 사용한다. 함수를 선언하는 def 키워드 대신, lambda 키워드를 사용하여 선언한다. lambda arguments : expression 사용법 다음 두 코드는 동일한 기능을 수행하는 코드이다. # 일반 함수 생성 def AddPlusOne(x, y) : return x + y + 1 # 람다식 AddPlusOne = lambda x, y : x + y + 1 실제로 사용해보면 다음과 같다. AddPlusOne = lambda x, y : x + y + 1 result = AddPlusOne(1, 2) print(result) # 3 출력 (lambda..
[Python] Lambda 식Lambda Expression 개념 무명 함수(Anonymous function)을 만들 때 사용하며, 특별한 이름이 없는 1회성 함수를 만들 때 사용한다. 함수를 선언하는 def 키워드 대신, lambda 키워드를 사용하여 선언한다. lambda arguments : expression 사용법 다음 두 코드는 동일한 기능을 수행하는 코드이다. # 일반 함수 생성 def AddPlusOne(x, y) : return x + y + 1 # 람다식 AddPlusOne = lambda x, y : x + y + 1 실제로 사용해보면 다음과 같다. AddPlusOne = lambda x, y : x + y + 1 result = AddPlusOne(1, 2) print(result) # 3 출력 (lambda..
2022.06.12 -
while / else Python에 있는 독특한 문법 while 문의 반복 조건이 False일 경우, else 문을 실행한다. while 문에 아예 진입하지 않았을 경우, else 문이 실행된다. x = 5 while x != 5: print("while 문 실행") else: print("else 문 실행") # "else 문 실행" 출력 while 문이 정상적으로 종료될 경우, else 문이 실행된다. x = 0 while x < 5: x += 1 else: print("else 문 실행") # "else 문 실행" 출력 단, break를 통해 강제로 while 문을 빠져 나올 경우에는 else 문이 실행되지 않는다. x = 0 while x < 5: x += 1 if x == 3: break el..
[Python] While / elsewhile / else Python에 있는 독특한 문법 while 문의 반복 조건이 False일 경우, else 문을 실행한다. while 문에 아예 진입하지 않았을 경우, else 문이 실행된다. x = 5 while x != 5: print("while 문 실행") else: print("else 문 실행") # "else 문 실행" 출력 while 문이 정상적으로 종료될 경우, else 문이 실행된다. x = 0 while x < 5: x += 1 else: print("else 문 실행") # "else 문 실행" 출력 단, break를 통해 강제로 while 문을 빠져 나올 경우에는 else 문이 실행되지 않는다. x = 0 while x < 5: x += 1 if x == 3: break el..
2022.06.12 -
DFS (Depth-First Search) 깊이 우선 탐색이라고도 부르며, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 스택(Stack) 자료구조를 이용하여 구현 동작과정 탐색 시작 노드를 스택에 삽입하고 방문 처리한다. 스택의 최상단 노드에 방문하지 않은 인접 노드가 있으면 그 인접 노드를 스택에 넣고 방문 처리한다. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼낸다. 2번의 과정을 더 이상 수행할 수 없을 때까지 반복한다. 소스코드 # DFS # 방문 정보를 리스트 자료형으로 표현 visited =[False] * 9 # 각 노드가 연결된 정보를 리스트 자료형으로 표현 (2차원 리스트) graph = [ [], # 1번 노드와 연결된 노드들 [2, 3, 8], # 2번 노드와 ..
[Python] 파이썬을 통해 구현한 DFS와 BFSDFS (Depth-First Search) 깊이 우선 탐색이라고도 부르며, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 스택(Stack) 자료구조를 이용하여 구현 동작과정 탐색 시작 노드를 스택에 삽입하고 방문 처리한다. 스택의 최상단 노드에 방문하지 않은 인접 노드가 있으면 그 인접 노드를 스택에 넣고 방문 처리한다. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼낸다. 2번의 과정을 더 이상 수행할 수 없을 때까지 반복한다. 소스코드 # DFS # 방문 정보를 리스트 자료형으로 표현 visited =[False] * 9 # 각 노드가 연결된 정보를 리스트 자료형으로 표현 (2차원 리스트) graph = [ [], # 1번 노드와 연결된 노드들 [2, 3, 8], # 2번 노드와 ..
2022.05.14 -
ord() 매개변수로 문자를 넘겨주면, 해당 문자의 유니코드 정수값을 리턴해준다. char = 'A' print(ord(char)) # 65 chr() 매개변수로 정수를 넘겨주면, 해당 정수의 유니코드 문자를 리턴해준다. num = 65 print(chr(num)) # 'A'
[Python] ord()와 chr() 함수ord() 매개변수로 문자를 넘겨주면, 해당 문자의 유니코드 정수값을 리턴해준다. char = 'A' print(ord(char)) # 65 chr() 매개변수로 정수를 넘겨주면, 해당 정수의 유니코드 문자를 리턴해준다. num = 65 print(chr(num)) # 'A'
2022.04.10 -
C 스타일 문자열 출력 문자열은 %s 정수는 %d 실수는 %f, 실수는 출력할 소수점 개수를 명시 가능 name = "Choi" home = "Daegu" print("My name is %s and I am from %s." % (name, home)) # My name is Choi and I am from Daegu 실수 소수점 개수 조정은 다음과 같이 할 수 있다. print("%.2f" % 0.1234) # 소수점 3번째에서 반올림하여 2번째 자리까지만 출력 f - 문자열 출력 Python 3.6부터 도입된 방법으로, 문자열 앞에 f로 시작하며 { }로 변수를 감싸서 표현한다. name = "Choi" home = "Daegu" print(f"My name is {name} and I am fr..
[Python] 문자열 출력 방식C 스타일 문자열 출력 문자열은 %s 정수는 %d 실수는 %f, 실수는 출력할 소수점 개수를 명시 가능 name = "Choi" home = "Daegu" print("My name is %s and I am from %s." % (name, home)) # My name is Choi and I am from Daegu 실수 소수점 개수 조정은 다음과 같이 할 수 있다. print("%.2f" % 0.1234) # 소수점 3번째에서 반올림하여 2번째 자리까지만 출력 f - 문자열 출력 Python 3.6부터 도입된 방법으로, 문자열 앞에 f로 시작하며 { }로 변수를 감싸서 표현한다. name = "Choi" home = "Daegu" print(f"My name is {name} and I am fr..
2022.03.17