Programming/Python

[Python] 자료형 확인하기 / 문자열 연산자

코딩왕(진) 2023. 3. 28. 20:42

1   자료형(Data type) 확인하기

파이썬에서 자료의 형식을 확인할 때는
type() 함수를 사용

예시 1)
print(type("안녕"))
실행 결과 : <class 'str'>

예시 2)
print(type(270))
실행 결과 : <class 'int'>

2   문자열

2.1   따옴표 사용과 이스케이프 문자

예제 1) 큰따옴표 사용
print("안녕")
실행 결과 : 안녕

예제 2) 작은따옴표 사용
print('안녕')
실행 결과 : 안녕

예제 3) 문자열 내부에 따옴표 넣기
print(""인셉션"봤어?")
실행 결과 : SyntaxError: invaild syntax
내부에 큰따옴표를 사용하고 싶다면 문자열을 작은따옴표로,
내부에 작은따옴표를 사용하고 싶다면 문자열을 큰따옴표로 만들면 됨

예제 4) escape 문자 사용
\" : 큰따옴표
print("\"인셉션\"봤어?")
실행 결과 : "인셉션"봤어?

\' : 작은따옴표
print('\'인셉션\'봤어?')
실행 결과 : '인셉션'봤어?

+ 자주 쓰이는 이스케이프 문자
\n : 줄바꿈
print("안녕하세요\n안녕하세요")
실행 결과 :
안녕하세요
안녕하세요

\t : 탭
print("안녕하세요\t안녕하세요")
실행 결과 : 안녕하세요	안녕하세요

\\ : 역슬래시
print(" \\ \\ \\ \\")
실행 결과 : \ \ \ \

 

2.2   여러 줄 문자열

예시 1) 여러 줄 문자열
print("""동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려강산 대한사람
대한으로 길이 보전하세""")
실행 결과 :
동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려강산 대한사람
대한으로 길이 보전하세
enter 부분마다 줄이 바뀜
큰따옴표 """ 세개 혹은 작은따옴표 ''' 세개

예시 2) 여러 줄 문자열
print("""
동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려강산 대한사람
대한으로 길이 보전하세
""")
실행 결과 :

동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려강산 대한사람
대한으로 길이 보전하세

위, 아래 공백이 생김

예시 3) 예시 2 해결법
print("""\
동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려강산 대한사람
대한으로 길이 보전하세\
""")
실행 결과 :
동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려강산 대한사람
대한으로 길이 보전하세

 

2.3   문자열 연산자

2.3.1   문자열 연결 연산자

예시 1) 문자열 연결 연산자
print("안녕" + "하세요")
실행 결과 : 안녕하세요

예시 2)
print("안녕하세요" + "!")
실행 결과 : 안녕하세요!

예시 3)
print("안녕하세요" + 1)
실행 결과 : TypeError: can only concatenate str (not "int") to str
문자끼리만 연결 가능하고, 숫자와 연결이 안된다고 함
숫자를 넣으려면 따옴표를 붙여서 문자열로 인식시켜야 출력이 됨

 

2.3.2   문자열 반복 연산자

예시 1)
print("안녕하세요" * 3)
실행 결과 : 안녕하세요안녕하세요안녕하세요

예시 2)
print(3 * "안녕하세요")
실행 결과 : 안녕하세요안녕하세요안녕하세요
앞뒤 바뀌어도 상관 없음

 

2.3.3   문자 선택 연산자(인덱싱)

예시 1)
print("안녕하세요"[0])
실행 결과 : 안

예시 2)
print("안녕하세요"[-1])
실행 결과 : 요

예시 3)
print("안녕하세요"[10])
실행 결과 : IndexError: string index out of range
리스트나 문자열의 수를 넘는 부분을 선택했기 때문에 발생하는 에러

 

2.3.4   문자열 범위 선택 연산자(슬라이싱)

예시 1)
print("안녕하세요"[1:4])
실행 결과 : 녕하세
마지막 숫자를 포함하지않고 출력

예시 2)
print("안녕하세요"[0:2])
실행 결과 : 안녕

예시 3)
print("안녕하세요"[1:])
실행 결과 : 녕하세요
뒤의 값 생략하면 끝의 문자까지 선택됨

예시 4)
print("안녕하세요"[:3])
실행 결과 : 안녕하
앞의 값 생략하면 첫 문자부터 선택됨

 

2.3.5   문자열 길이 구하기

예시 1)
print(len("안녕하세요"))
실행 결과 : 5
함수가 이중으로 사용되어 있는데, 함수가 중첩된 경우 괄호 안쪽부터 먼저 실행

print(len("안녕하세요"))
↓
print(5)
↓
5