반응형

오늘은 파이썬의 문자열에 대해서 알려드릴게요.

문자열은 문자들이 순서대로 나열된 것을 얘기합니다.

앞서 print("Hello World") 코드를 입력해서 Hello World라는 텍스트가 출력되었죠.

print() 안에 입력된 "Hello World"가 바로 문자열이에요.

 

"Hello World"는 문자열

 

정말 문자열인지 확인해볼까요?

print() 대신에 type()로 코드를 변경하면 type("Hello World")이 되겠죠.

type()을 사용하면 입력된 데이터가 어떤 자료 형식인지 확인할 수 있습니다.

그래서 type("Hello World") 코드를 실행하면 str로 출력되는 것을 볼 수 있어요.

이건 "Hello World"라고 입력된 데이터가 문자열이라는 것을 의미해요.

참고로 str은 string(문자열)의 약자입니다.

 

type()로 "Hello World"가 문자열인 것을 확인한 모습

 

파이썬에서 문자열은 큰따옴표작은따옴표로 표시할 수 있어요.

그래서 print("Hello World") 코드와 print('Hello World') 코드의 출력 결과가 동일해요.

 

문자열은 큰따옴표와 작은따옴표를 사용

 

이스케이프 문자

만약 문자열 안에 큰따옴표 or 작은따옴표를 사용하고 싶으면 어떻게 하면 좋을까요?

print("I'm a boy") 라는 코드처럼 큰따옴표와 작은따옴표를 구분해서 사용하는 건 문제가 없어요.

그러면 print('I'm a boy') 코드는 어떨까요?

바로 아래처럼 에러가 발생해요.

 

문자열 안에 같은 따옴표를 사용하면 에러 발생

 

그리고 이럴 때 필요한 게 이스케이프 문자(escape character)에요.

이스케이프 문자는 문자열에 영향을 주지 않고 큰따옴표, 작은따옴표 같은 문자를 사용할 수 있게 해줘요.

그리고 이 이스케이프 문자를 사용하는 방법은 필요한 곳에 백슬래시를 입력해주면 돼요.

그래서 앞서 에러가 발생했던 코드에 "\"를 입력하면 문제가 해결됩니다.

 

이스케이프 문자 \로 에러를 해결한 모습

 

그럼 print("C:\Program Files\Naver") 코드는 어떤 결과가 나올까요?

이번에도 에러가 발행하네요.

이번 문제는 무엇일까요?

 

 

바로 이스케이프 문자 때문이에요.

파이썬에 정의된 이스케이프 문자 중에는 "\n" 이 있어요.

그리고 아래처럼 줄을 바꾸기 위해서 사용됩니다.

 

줄바꿈을 위한 이스케이프 문자 \n

 

이제 왜 print("C:\Program Files\Naver") 코드에서 에러가 발생했는지 아시겠나요?

생각하신 대로 "Program Files""Naver" 사이의 백슬래시를 "\n"으로 인식해서 그래요.

그리고 이 문제를 해결하는 방법은 간단해요.

백슬래시 앞에 "\"를 한번 더 입력해서 "C:\Program Files\\Naver"가 되도록 변경해 주세요.

이것도 미리 정의된 이스케이프 문자입니다.

 

이스케이프 문자 \\를 사용해서 에러를 해결

 

그런데 아래의 문자열을 출력하고 싶다면 마찬가지로 이스케이프 문자 "\\"를 사용하실 건가요?

만약에 사용하고 싶은 문자열이 더 긴 경우에도 하나씩 변경할 수 있을까요?

"C:\Program Files\NVIDIA Corporation\NvContainer\plugins\User" 같은 경우에는 문자열 앞에 "r"을 입력해 주세요.

"r" 뒤의 문자열에 입력된 이스케이프 문자를 무시하고 사용할 수 있게 해줘요.

바로 아래처럼요.

 

문자열을 raw string으로 지정해서 이스케이프 문자를 무시하고 사용

 

그래서 아래처럼 줄을 바꾸고 싶을 때는 주의해서 사용하세요.

 

이스케이프 문자를 사용하고 싶은 경우 raw string 지정은 피하기

 

오늘 알려드릴 내용은 여기까지입니다.

다음에는 문자열을 사용하는 방법에 대해서 알려드릴게요.

반응형

'개발 > 파이썬 문법' 카테고리의 다른 글

파이썬의 숫자형  (0) 2021.09.13
문자열 활용하기  (0) 2021.09.11
문자열 사용하기  (0) 2021.09.10
파이썬 문법 정리 목차 (작성중)  (0) 2021.04.19
파이썬 문법 정리 계획서  (0) 2021.04.18

+ Recent posts