본문 바로가기

Coding, Testing, Challenge/python-basic

Python 자료형

728x90

이번 포스팅에서는 Python의 자료형에 대해서 알아보겠습니다.

 

계산기로 1과 2를 더한다고 한다면 다음과 같은 식이 나올 수 있습니다.

          1+2=?

프로그래밍을 한다는 것은 이런 수식을 만들어서 결과를 내는 것과 같습니다.

즉 위의 경우는 "1과 2를 더했을 때 나오는 결과를 알기 위한 프로그램이다."라고 과도 무방 한 것입니다.

이때 1과 2는 식 자체에서 변화를 줄 수 없고 1은 1로 밖에 존재할 수 없고,

2는 오직 2의 의미만 가지고 있습니다. 이런 것처럼 한번 부여되면 그 값이 변화하지 않는 것을 상수라고 부릅니다. 

그러면 식을 살짝 바꿔 보겠습니다.

          X+Y=?

위의 수식은 X와 Y라는 값을 더했을 때 결과를 알기 위한 식입니다.

 X와 Y는 무엇이라도 들어갈 수 있고, 정해 진 것이 아니라 임의로 부여할 수 있는 "수"라고 할 수 있습니다. 

이렇게 임의로 부여하여 값을 저장하고, 또한 언제라도 변할 수 있는 수를 프로그래밍에서는 변수라고 부릅니다.

 

그러면 자료형이란 무엇일까요?

         X+Y=?

위의 수식의 X와 Y에는 들어갈 수 있는 숫자, 문자 등등을 크게 분류해 놓은 것이라고 보시면 됩니다.

파이썬의 경우 자료형이 크게

        숫자(Number)

        문자열(String)

        불린(Boolean)

으로 나눌 수 있습니다.

 

숫자는 다시 2개로 분류됩니다.

        정수(Integer)

        소수(Floating Point)

정수는 1, 0, -1처럼 0보다 크거나 작고 0을 포함하며 소수점이 없습니다.

소수는 3.5,  -0.3. 1.0처럼 정수 수분과 소수점 이하의 부분으로 이루어져 있습니다.

1과 1.0 일반적인 계산기에서는 동일하지만, Python을 포함 프로그래밍 언어들에서는 연산 등에서 차이점이 있습니다.

 

 

 

다음은 문자열입니다.

"Hello", "A", "2", "1.0" 

'Hello', 'A', '2', '1.0'

위의 예시처럼 ""(큰따옴표), ''(홑 따옴표) 안에 있는 것들은 문자열로 구분합니다.

문자열은 말 그대로 우리가 읽고 쓰고 말하는 문자들을 말합니다.

그리고 특이한 점은 문자 간에도 연산이 가능하다는 점입니다.

아래의 코드를 보면

a, b, c 3개의 변수에 각각 문자열 today, is, hot을 대입하였고 print문을 통해서 문자열을 출력해보려고 합니다.

결과는 아래와 같이

a, b, c 가각의 변수 값이 표현되고, 문자열끼리 더해져서 한 번에 출력되는 것을 볼 수 있습니다.

python에서는 이처럼 숫자를 더할 수 있습니다.

 

여기서 예시에 계속 반복되었지만, 

정수 1

소수 1.0

문자열 "1.0"

위의 3개지는 모두 1로 보이지만 전혀 다른 성질을 가지고 있습니다.

 

다음 코스는 정수, 소수, 문자열을 각각 선언하고 더하는 코드입니다.

결과를 보면

정수끼리 더한 것은 정수 3

소수끼리 더한 것은 소수 3.0

그리고 문자열끼리 더한 것은 숫자 연산이 아닌 문자열이 이어져서 1.02.0으로 표시되는 것을 알 수 있습니다.

마지막은 불린(Boolean)입니다.

불린은 참, 거짓 즉 True False를 나타내는 값입니다.

불린의 경우 값을 비교하는 연산에서 많이 나타나며,

참 True는 1로, 거짓 False는 0으로 표현할 수도 있습니다.

 

이번 포스팅에서는 파이썬의 대표적인 자료형들에 대해서 알아보았습니다.

다음번에는 변수에 대해서 조금 더 자세히 알아보고, 함수에 대해서 알아보도록 하겠습니다.

 

 

'Coding, Testing, Challenge > python-basic' 카테고리의 다른 글

Python 문자열 표현과 연산  (0) 2020.12.20
Python 숫자형 연산  (0) 2020.12.20
Python 함수와 파라미터  (0) 2020.12.15
Python 변수와 함수  (0) 2020.12.14
python 및 환경 설치  (0) 2020.12.08