본문 바로가기
Programming/Python

4. 자료형과 문자열, 숫자

by IT learning 2021. 3. 7.
728x90

자료형과 문자열

기본적인 자료형에는 string, number, boolean이 있다.

자료형을 확인하고 싶을때는 

print(type("안녕하세요"))
print(type(273))

type(원하는 것)을 입력하면 

이렇게 입력한 것이 어떤 타입인지를 알려준다.

 

print("이름\t나이\t지역")
print("IT\t24\tOO시")
print("Hello\t23\tOO시")
print("""
안녕하세요. 이곳은 강원도 철원입니다.
민간인 통제선을 넘은 곳이기도 하구요.
오늘은 민통선을 넘은 저의 이야기를 펼쳐보려고 합니다!
""")
print("""\
안녕하세요. 이곳은 강원도 철원입니다.
민간인 통제선을 넘은 곳이기도 하구요.
오늘은 민통선을 넘은 저의 이야기를 펼쳐보려고 합니다!\
""")

 또 이 코드들을 보면

\t를 입력했을경우 탭 기능으로 일정 공간이 넘어간다.

""" 를 입력했을 경우 텍스트 줄넘김이 자동으로 이루어진다.

"""\ 를 입력하면 그 줄에는 줄넘김이 없는걸로 인지하게 해준다.

이렇게 출력이 된다.

 

문자 선택 연산자(인덱싱) : []

 

문자 선택 연산자는 문자열 내부의 문자를 하나 선택하는 연산자이다.

이 숫자를 인덱스 라고 한다. string에서의 시작은 0으로 제로 인덱스라 하고, int에서의 시작은 1로 원 인덱스라 칭한다.

 

print("문자 선택 연산자에 대해 알아볼까요?")
print("안녕하세요"[0])
print("안녕하세요"[1])
print("안녕하세요"[2])
print("안녕하세요"[3])
print("안녕하세요"[4])

이렇게 출력이 된다.

문자열은 0부터 시작이니까, 4가 최대다.

5가 넘어갈경우

위와같은 오류가 발생한다. 

 

문자 선택 연산자(슬라이싱) : []

슬라이싱은 인덱싱과는 조금 다른 기능이다.

print("문자 선택 연산자에 대해 알아볼까요?")

# 인덱싱
print("안녕하세요"[-1])
print("안녕하세요"[-2])
print("안녕하세요"[-3])
print("안녕하세요"[-4])
print("안녕하세요"[-5])
print()

# 슬라이싱
print("안녕하세요"[0:2])
print("안녕하세요"[0:4])
print()
print("안녕하세여"[:4])
print("안녕하세요"[:3])

#문자열 길이
length = len("안녕하세요")
print(length)

위의 사진과 같이 인덱싱과 슬라이싱은 차이점이 존재한다.

인덱싱은 하나하나 출력하는 반면, 슬라이싱은 어디서부터 어디까지 출력할 곳을 정해놓고 출력을 하는 형식이다.

 

아래의 길이는 말 그대로 string문자열의 길이를 출력하는 것이다.

 

한가지 꼭 기억해 두어야 할 것은 

문자열 선택 연산자로 슬라이스를 하더라도 원본은 변하지 않는다는 것이다.

 

숫자

숫자의 종류로는 Integer,Floating Point가 있다.

정수와 실수라고 생각하면 된다.

 

print(273)
print(52.334)
print()
print(type(2734))
print(type(33.454))
print()
# 숫자 연산자
print("5 + 7 = ", 5 + 7) # +
print("5 - 7 = ", 5 - 7) # -
print("5 * 5 = ", 5 * 7) # *
print("100 / 24 = ", 15 / 4) # /
print("100 // 24 = ", 100 // 24) # // 정수 연산자 
print("5 % 2 = ", 5 % 2) # % 나머지
print("2 ** 2 = ", 2 ** 2) # ** 제곱 연산자
print(2 - 2 + 2 / 2 * 2 + 2)

위 코드의 실행결과이다.

 

기본적으로 int형과 float형은 선언이 필요없이 그냥 출력이 가능하다.

또한 type으로 각 타입이 어떤건지 출력을 했고,

 

아래서부턴 숫자 연산에 대한 출력이다.

기본적인 사칙연산이 수행이 가능하고, 정수 연산, 나머지, 제곱 연산또한 가능했다.

 

마지막 줄은 연산의 우선순위를 보통 사람들이 두듯이 파이썬 자체적으로도 우선순위를 두어 식을 진행한다.

하지만 저렇게는 개발자 입장에서도 보기가 싫은 코드이다. 꼭 우선순위 대로 괄호를 두어 처리하자!

728x90

댓글

IT_learning's Commit