본문 바로가기
반응형

Python5

[파이썬] 리스트(배열)를 문자열로 변환 (Python list to string) 파이썬으로 간단한 알고리즘 문제를 풀다가 문자열을 이루고 있는 각 문자들을 배열로 다룰 필요가 있었습니다. 문자열과 문자 리스트의 상호 변환은 알고리즘 문제 풀이에서 자주 만나게 되는 사용패턴인데요. 스택(Stack)이나 큐(Queue) 같은 자료 구조에 문자열을 이루고 있는 문자들을 넣었다가 빼는 동작을 하고 다시 문자열로 만드는 동작이 필요했습니다. 파이썬의 문자열 타입은 'join(list)' 메서드를 제공하고 있습니다. 'join()' 메서드를 이용하면 리스트를 구성하고 있는 각각의 문자들을 하나의 문자열 형태로 변경해서 반환해줍니다. 다음 예제 코드를 살펴보겠습니다. str_list = ['H', 'E', 'L', 'L', 'O', ' ', 'W', 'O', 'R', 'L', 'D'] print.. 2020. 3. 14.
[파이썬] TypeError: 'NoneType' object is not iterable 오류 파이썬 프로그램을 작성하다가 가끔씩 타입 관련된 에러메시지를 만나곤 합니다. 그 중 하나가 `TypeError: 'NoneType' object is not iterable` 에러입니다. 객체가 iterable 하지 않다는 에러입니다. 이 에러를 재현할 수 있는 파이썬 코드는 다음과 같습니다. def function1(param1): if param1 == 1: return "abc" elif param2 == 2: return "def" elif param2 == 3: return "ghi" value = 1 for char in function1(value): print(char) 이 코드를 실행하면 a b c 이런 실행 결과를 얻게 됩니다. value 변수의 값을 1, 2, 3이 아닌 값으로 지정한.. 2020. 3. 14.
[파이썬] 주석 처리(Comment) - 여러줄 주석처리하기 JAVA나 C언어에서는 함수나 메소드 전체를 코드에서 잠시 배제시킬 때 '/*' 와 '*/' 를 이용합니다. 두 문자 사이에 있는 내용은 컴파일러가 바이트 코드나 바이너리에 포함시키기 않죠. 디버깅을 하면서 빠르게 코드를 수정했다가 다시 살릴 때 쓰기 좋습니다. 파이썬의 멀티라인 주석 파이썬에서는 기본적으로 '#' 문자를 이용한 주석처리밖에 없습니다. 따라서 멀티 라인을 주석처리하기 위해서는 여러 라인의 맨 앞에 '#' 문자를 집어 넣는 작업을 해줘야 합니다. 대부분은 통합개발환경(IDE)에서 기능을 제공해줍니다. 파이썬을 만든 '귀도 반 로썸(Guido van Rossum)'은 자신의 트위터를 통해 멀티라인 문자열(multi-line string)을 이용해 멀티라인 주석처리를 하는 팁을 알려줬습니다. .. 2020. 3. 10.
[파이썬] 3항 연산자 문법 Java 혹은 C 언어로 프로그래밍을 하신 분들은 3항 연산자의 장점을 잘 아실겁니다. 3항 연산자를 이용하면 if - else 로 길게 써야하는 조건들을 간단하게 한줄로 쓸 수 있어 코드가 간략해집니다. JAVA 혹은 C 언어에서 3항 연산자는 다음과 같은 형태였습니다. variable = condition ? result1 : result2; 동일한 코드를 풀어쓰면 if (condition) { variable = result1; } else { variable = result2; } 다소 길어집니다. 파이썬 3항 연산자 파이썬은 2.5 버전부터 3항 연산자 문법이 적용되었습니다. 이와 관련된 자세한 내용은 PEP-308 문서:Conditional Expression을 참고하면 됩니다. 파이썬에서의 .. 2020. 3. 10.
파이썬 'NameError: name 'input' is not defined' 에러 (raw_input과 input 차이) 사용자로부터 입력을 받는 파이썬 프로그램을 작성할 때, 다음 에러를 만나게 될 때가 있다. NameError: name 'input' is not defined 간단한 파이썬 프로그램 하나를 실행해보자. input_value = input("Please input your value :") print(input_value) 사용자로부터 입력을 받아 그대로 화면에 출력해주는 프로그램이다. 이 코드를 실행했을 때, 다음 화면처럼 'NameError' 메시지를 만나게 되는 경우가 있다. 'NameError: name 'a' is not defined' 라는 에러메시지가 발생하면서 생각한대로 코드가 동작하지 않는다. 이런 에러의 원인은 Python 2.x 버전에서 발생한다. 같은 코드를 Python 3.x 버전.. 2020. 2. 15.
반응형