Just Special Life

Python 파이썬/Notion

파이썬 독학 일기장 Chapter 1. 자료형과 문자열

문님 2022. 8. 18. 13:10

 

안녕하세요. 문님입니다.

오늘 공부할 부분은 파이썬 chapter 1. 자료형과 문자열 입니다.

 

 

자료형은 개발자들이 쉽게 사용할 수 있도록 기능과 역할에 따라 자료를 분류한 것입니다.

가장 기본적인 자료형으로는 문자열, 숫자, 불이 있습니다.

 

문자열(str) : "안녕하세요", "Hello World"

숫자(int, float): 1, 24, 35764, 36.3

불(bool): True, False

 

 

파이썬에서 자료형을 확인할 때는 type() 함수를 사용합니다.

이때 자료형이 정수면 int가,

자료형이 문자열이면 str이 출력될 것입니다.

 

 

기본적인 자료형을 파악했으니 문자형에서 알아둬야 할 것을 알아보겠습니다.

 

 

 

Part 1. 자료형과 문자열

(1) 이스케이프 문자

 

문자형은 기본적으로 큰 따옴표(") 혹은 작은 따옴표(')로 감싸야 합니다.

ex. print("안녕하세요", '반갑습니다')

 

 

그렇다면 큰따옴표와 작은 따옴표를 있는 그대로 출력하려면 어떻게 할까요?

print(') 라고 출력하면 오류가 생깁니다.

 

 

이렇게 특수 문자 단독으로 사용되지 않고 역슬래시(\) 기호와 조합하여 사용하는 문자를 이스케이프 문자라고 합니다.

특수 문자 외에도 역슬래시를 사용해서 출력해야 하는 기호가 있습니다.

\n 은 줄바꿈을 한다는 표시이고,

\t는 탭,

"""\ 는 여러 줄 문자열을 입력할 경우 줄바꿈을 하지 않는다는 뜻입니다.

* 한글 키보드에서는 원화 특수문자(\)를 사용하면 됩니다.

print("안녕하세요\n반갑습니다")
print("안녕하세요\t반갑습니다")

 

(2) 인덱스

 

문자열은 기본적으로 인덱스가 있습니다.

"안녕하세요" 를 출력하고자 한다면 안, 녕, 하, 세, 요 가 개개인의 고유 번호를 갖는 것입니다.

 

파이썬은 고유 번호 지정을 0부터 시작하는 <제로 인덱스>를 사용하는 언어입니다.

따라서 '안'의 인덱스는 0,

'세'의 인덱스는 3이 되는 것입니다.

 

이러한 인덱스는 대괄호([])를 사용하여 특정 문자를 출력할 수 있습니다.

print("안녕하세요"[3]) 을 입력하면

출력은 '세'가 되는 것입니다.

print("안녕하세요"[3])

 

 

(3) 문자열 범위 선택 연산자

 

인덱스에서 배운 대괄호를 이용하여 문자열의 범위를 잡아 출력할 수 있습니다.

다만 주의해야 될 부분은 [0:2]의 형태로 범위를 잡을 시 뒷 숫자의 -1 만큼이 출력됩니다.

안녕하세요[0:2] 라면 "안녕하" 가 아닌, "안녕"이 출력되는 것입니다.

 

또한, 첫 번째 숫자 혹은 마지막 숫자를 생략하면 처음부터, 혹은 마지막까지 출력됩니다.

아래의 예시를 보시겠습니다.

 

print("안녕하세요"[1:3])
print("안녕하세요"[:3])
print("안녕하세요"[1:])
print("안녕하세요"[:])

 

 

 

 

 

 

Problem & Solve

배운 내용을 바탕으로 문제를 풀어보겠습니다.

10171번: 고양이 (acmicpc.net)

 

10171번: 고양이

아래 예제와 같이 고양이를 출력하시오.

www.acmicpc.net

 

 

 

 

\    /\
 )  ( ')
(  /  )
 \(__)|

다음 모양을 출력하는 문제입니다.

이스케이프 문자에 유의하여 풀어보시길 바라겠습니다.

해설이 필요하신 분은 아래의 링크를 참고해주세요.

 

[백준] python 파이썬-10171 고양이 (tistory.com)

 

[백준] python 파이썬-10171 고양이

안녕하세요. 문님입니다. 오늘 풀어볼 파이썬 문제는 [백준 고양이-10171] 입니다. 1. 문제 설명 고양이 이모티콘을 출력하는 문제입니다. \ /\ ) ( ') ( / ) \(__)| 2. 문제 풀이 print("""\\ /\\ ) ( ') ( / )..

myzdus.tistory.com