파이썬 출력에서 사용한 ‘Hello World’ 기억하시나요?
‘Hello World’는 글자잖아요. 여러분들의 이름도 글자죠.
이처럼 글자를 다루는 자료형을 문자열(String)이라고 해요.
다른 프로그래밍 언어에서는 조금 더 상세하게
문자와 문자열이라는 자료형을 구분해서 사용하거든요?
그런데 파이썬에서는 구분이 없어요.
그냥 다 문자열이에요.
그럼 파이썬에서 문자열은 어떻게 사용할 수 있을까요?
작은따옴표(’)와 큰따옴표(”)를 이용한 방법
먼저 파이썬은 작은따옴표(’)와 큰따옴표(”)를 사용해서 문자열을 작성할 수 있어요.
물론 자바스크립트도 작은따옴표로 문자열을 표현할 수 있지만
C나 JAVA에서는 작은따옴표를 사용하면 문자라는 자료형으로 생각해요.
그럼 파이썬에서 문자열을 작성해볼까요?
str1 = 'Hello World'
str2 = "Hello World"
name = "홍길동"
srt1과 str2는 모두 ‘Hello World’라는 문자열을 저장하네요.
두 코드를 보는 것과 같이 처음에 작은따옴표로 시작했으면 마지막에도 작은따옴표로 끝나야되요.
당연히 큰따옴표로 시작했으면 큰따옴표로 끝나야겠죠?
왜 파이썬은 두 방법을 모두 지원할까요?
다음에 작성된 코드로 그 이유를 알아볼게요.
# I'm student.를 화면에 출력하기
introduce = "I'm student."
# 선생님이 "오늘 숙제했어?"라고 물어봤다.를 화면에 출력하기
message = '선생님이 "오늘 숙제했어?"라고 물어봤다.'
혹시 이유를 발견하셨나요?
우리가 사용하는 문장에는 작은따옴표와 큰따옴표가 사용되기도 합니다.
이런 문자를 조금 더 편하게 사용할 수 있도록 파이썬은 두 가지 방법을 지원하는데요.
다른 언어에서는 어떻게 작성해야 했을까요?
# 코드는 파이썬으로 작성했지만 다른 언어라고 생각해주세요.
message1 = "선생님이 \\"오늘 숙제했어?\\"라고 물어봤다."
아시겠죠?
다른 언어에서는 문자열 안에 큰따옴표를 사용하기 위해서 \\를 입력해야되요.
이렇게 작성되는 문자를 이스케이프 문자라고 하는데
파이썬으로 작성하면 이스케이프 문자를 최소화할 수 있어요.
물론! 파이썬도 이스케이프 문자를 사용할 수 있으니 message1을 출력하면 위에 작성한 message와
동일하게 출력이 될거에요.
작은따옴표(’) 또는 큰따옴표(”)를 이용하여 여러 줄 작성하기
처음 파이썬을 공부하면서 이 부분에서 많이 놀랐어요.
먼저 기존에 문자열을 여러 줄 작성하는 방법에 대해 알아볼게요.
# 출력 예시
# 안녕하세요.
# 저는 홍길동입니다.
multiMessage = '안녕하세요.\n저는 홍길동입니다.'
이번에도 이스케이프 문자가 사용되었네요.
\n은 줄 바꿈을 위한 코드에요. 주로 개행문자라고해요.
다음으로 파이썬에서 지원하는 방법으로 작성해볼까요?
# 출력 예시
# 안녕하세요.
# 저는 홍길동입니다.
multiMessage1 = """안녕하세요
저는 홍길동입니다.
"""
print(multiMessage1)
>>> 안녕하세요.
>>> 저는 홍길동입니다.
# 출력 예시
# 저의 직업은 개발자입니다.
# 저는 홍길동입니다.
multiMessage2 = '''저의 직업은 개발자입니다.
저는 홍길동입니다.
'''
print(printMessage2)
>>> 저의 직업은 개발자입니다.
>>> 저는 홍길동입니다.
문자열을 여러 줄 출력하기 위해서 작은따옴표나 큰따옴표를 세 개씩 쓰면 되네요.
매번 문장 끝에 개행문자를 작성하는 것보다 파이썬에서 제공하는 방법이 더 편해요.
문자열로 형변환하기
숫자 자료형에서는 문자열를 숫자로 형변환 하는 방법을 알아봤어요.
이번에는 반대로 숫자를 문자열로 형변환해보려고 해요.
물론 숫자만 문자열로 형변환할 수 있는 것은 아니에요.
다른 자료형들도 문자열로 형변환 가능하다는 것을 생각하고,
그럼 코드를 작성해볼까요?
price = str(10000)
print(type(price))
>>> <class 'str'>
쉽죠? 이번에는 str(...) 함수를 통해 문자열로 형변환 하는 방법을 배워봤어요.
'Backend > Python' 카테고리의 다른 글
[Python] 문자열 포매팅 (0) | 2022.05.23 |
---|---|
[Python] 문자열 연산 (0) | 2022.05.23 |
[Python] 숫자 자료형 (0) | 2022.05.23 |
[Python] 자료형과 변수(with. 타입체크와 형변환) (0) | 2022.05.23 |
[Python] 표준 입출력 (0) | 2022.05.23 |