박봉달의 개발생활

[CodeUp] Python 기본 100제 문제풀이와 궁금점 / 해답 #1 본문

IT/Python

[CodeUp] Python 기본 100제 문제풀이와 궁금점 / 해답 #1

박봉달 2021. 3. 19. 11:48
728x90

본 글은 필자의 개발 공부를 위해 적는 포스트임을 알립니다.

어느 날부터 웹개발에 눈을 뜨고 흥미를 가지기 시작하다가, 정신을 차려보니 강의를 결제하고 공부하고 있는 내 자신을 발견했다. 하면 할수록 쉽지 않고 이해력을 많이 필요로 하는 프로그래밍. 다행히 고등학교 시절 HTML을 간단하게 만져본 기억이 있어서 어느 정도 친숙하긴 하다.

파이썬은 요즘 프로그래밍 시장에 있어서 가장 많이 쓰이는 프로그래밍 언어 중 하나라고 생각한다. AI를 이용하는 프로그램들도 파이썬으로 쓰여지는 경우가 많다.

필자 개인을 위한 정리이기 때문에 틀린 부분이 있다면 알려주시고, 현역으로 뛰고 계신 분들이 계시다면 팁도 부탁드립니다! (공부하는 입장으로서 저도 모르는 부분이 있기에 질문은 최소한으로 해주시면 감사하겠습니다)


1. 이스케이프 문자(Escape Sequences for Special Characters)

파이썬을 제대로 배워보려고 CodeUp 코드업 기초 100제를 풀어보고 있다.

이번에는 작은 따옴표 (')를 출력해야하는 연습을 하는 중이다.

작은 따옴표는 파이썬 시스템 내에서도 사용되기 때문에 특별하게 출력할 수 있는 조치가 필요하다.

아래의 문제를 보자.

Hello 만 출력하는 것이 아닌, 'Hello'로 출력해야한다.

파이썬의 이스케이프 문자는 아래와 같다.

이스케이프 시퀀스

설명

\\

백슬래시, \

\'

작은따옴표, Single quote, '

\"

큰따옴표, Double quote, "

\a

벨, ASCII Bell, BEL

\b

백스페이스, ASCII Backspace, BS

\f

폼피드, ASCII Formfeed, FF

\n

새 줄, 개행 문자, ASCII Linefeed, LF

\r

캐리지 리턴, ASCII Carriage Return, CR

\t

탭 문자, ASCII Horizontal Tab, TAB

\v

수직 탭, ASCII Vertical Tab, VT

그럼 위의 자료를 참고하여 'Hello'를 출력하고자 한다면 어떻게 해야할까?

\'를 중간에 삽입하여 작은 따옴표로 출력해줘야 한다.

아래의 코드로 작성하니 제출이 완료되었다.

print("\'Hello\'")

큰따옴표를 함께 출력하는 다음 문제도 비슷하게 풀 수 있다.

\" 라는 이스케이프 시퀸스를 사용하여 문제를 해결하면 된다.

print("\"Hello World\"")

이스케이프 시퀸스의 공통점은

바로 백스페이스(\) 가 먼저 나온다는 것!

그리고 백스페이스와 어떠한 공간이 있으면 이스케이프 문자로 인식이 안된다는 것!


여기서 궁금한점!

파이썬에는 삼중 따옴표가 있다고 한다. (""")

어떻게 사용하는 것일까?

구글링을 하다보니 파이썬 공식 Document를 찾았다.

여기서 삼중따옴표가 나온다.

https://docs.python.org/ko/3.6/tutorial/introduction.html

 

3. 파이썬의 간략한 소개 — Python 3.6.13 문서

3. 파이썬의 간략한 소개 다음에 나올 예에서, 입력과 출력은 프롬프트(>>> 와 …)의 존재 여부로 구분됩니다: 예제를 실행하기 위해서는 프롬프트가 나올 때 프롬프트 뒤에 오는 모든 것들을 입

docs.python.org

작은 따옴표(')와 큰 따옴표(")는 작성하고자 하는 문자열을

논리적으로 한 줄에 표현해야하지만,

삼중 따옴표(""")는 그렇게 표현하지 않아도 표현이 가능하다고 말한다.

삼중따옴표는 개행문자를 넣지 않고도 줄바꿈 문자(\n)를

자동적으로 삽입해주며, 줄바꿈을 원치 않을 경우엔

문장의 끝에 백슬래시(\)를 삽입하면 줄 개행이 되지 않는다.

//코드
threeQuotes = """
Hi!\  // 개행 안됨
Python Versions Compatibility
Your source code.
"""

print(threeQuotes)

//결과
Hi! Python Versions Compatibility
Your source code.

이렇게 사용하면 간편하지 않을까?


2. 특수문자 제대로 출력하기

특수문자들이 포함된 파일 경로를 출력해보는 연습을 한다.

중점적으로 봐야하는 부분은, " 와 ' 와 \ 를 오류없이 출력하는 것이다.

그리 하여 출력 결과를

"C:\Download\'hello'.py"

이 자체로 출력해야하는 것이다.

print("\"C:\\Download\\\'hello\'.py\"")

위의 코드를 제출하니 정확한 정답이라는 피드백이 나왔다.

문제에서도 나와있듯, 백슬래시(\)를 안전하게 출력하기 위해선

백슬래시를 두번 (\\) 입력하는 것이 필요하다!

기초 100제의 출력문 마지막 문제다.

print("Hello\nWorld")

이 자체를 출력하는 것이 문제이다.

여기서의 문제 핵심은 개행문자(\n)을 어떻게 출력하냐지 않을까?

그렇다면 \n 을 그대로 출력하려면 어떻게 해야할까?

print("print(\"Hello\\nWorld\")")

바로 개행문자에서 백슬래시(\)를 이스케이프 문자로

더블 백슬래시(\\)를 해주었더니 풀이가 완료 되었다!


오늘은 코드업 파이썬 기초 100제 중

출력문을 풀어보면서 특이점과 궁금점을 정리해보았다.

정리한 내용이 도움이 되길 바라며 마친다!

728x90
반응형

'IT > Python' 카테고리의 다른 글

[CodeUp] Python 기본 100제 문제풀이와 궁금점 / 해답 #2  (0) 2021.03.19