자료형(data type)

컴퓨터는 자료형(data type)이라는 거에따라 데이터의 의미, 저장하는 방식 등을 결정한다. 고로 우리는 프로그래밍을 할 때, 자료형을 이해할 필요가 있다. 기본적인 자료형에는 정수형,소수형,불린 등이 있다.

정수형(integer)

  • 정수형은 자연수, 0 그리고 음의 자연수를 말한다.
  • 정수형끼리의 연산은 정수형으로 결과값이 나온다.

예시

💻 마크다운

print(3 + 5) # 덧셈
print(7 - 4) # 뺄셈
print(5 * 9) # 곱셈
print(9 % 4) # 나머지값
print(5 ** 2) # 거듭제곱

👀 결과

8
3
45
1
25

소수형(Floating Point)

  • 소수형은 자연수가 아닌 소수로 되어있는 수를 말한다.
  • 소수형끼리의 연산을 하면 소수형이나온다.
  • 정수형과 소수형끼리 연산을 하면 소수형이 나온다(소수형이 힘이 더 쌤)
  • 나눗셈에서는 정수형끼리하든,소수형끼리하든 소수형이 나온다.

예시

💻 마크다운

print(3.2 + 3.7) # 덧셈
print(5 - 2.7) # 뺄셈
print(5.0 * 3.0) # 곱셈
print(9.0 % 4) # 나머지값
print(5.0 ** 2.2) # 거듭제곱
print(5 / 2) # (정수형끼리의)나눗셈
print(8.0 / 2.0) # 나눗셈

👀 결과

6.9
2.3
15.0
1.0
34.493241536530384
2.5
4.0

문자열(string)

  • 문자열이란 '글자'로 되어있는 것들 말한다.
  • 문자열로 표현하는 방법은 " " 또는 ' ' 안에 문자를 쓰면된다.
  • 문자열끼리 더할 수 있다
  • (문자열)*(정수형)을 이용해 문자를 반복하여 쓸 수 있다.

예시

💻 마크다운

print("안녕하세요") # " " 안에 문자를 넣어쓸 수 있다.
print('안녕하세요') # ' ' 안에 문자를 넣어쓸 수 있다.
print("안녕하세요. 저는 '최대환'입니다") # "안에 '를 넣어 작은 따음표를 문자열로 만드는게 가능하다 
print('소크라테스는 "너 자신을 알라" 라고 말했다.')  # '안에 "를 넣어 큰 따음표를 문자열로 만드는게 가능하다 
print("이렇게" + "서로 더할 수 있습니다") # 문자열끼리 더할 수 있다.
print("5" + "6") # 여기서의 5와 6은 정수형이 아니라 문자열임으로 11이 아니라 56이 된다.
print("ㅋ" * 10) # 곱하기를 이용하여 한 글자를 여러번 반복하여 쓸 수 있다.

👀 결과

안녕하세요
안녕하세요
안녕하세요. 저는 '최대환'입니다
소크라테스는 "너 자신을 알라" 라고 말했다.
이렇게서로 더할 수 있습니다
56
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

불린(boolean)

  • 불린은 참과 거짓을 표현하는 자료형이다.
  • 불린이란 말은 불 대수(Boolean Algebra)를 정립시킨 영국의 수학자 겸 논리학자인 '조지 불'의 이름을 따와서 지어졌다.
  • and 는 왼쪽과 우측이 모두 True여야 True이다.
  • or 은 왼쪽과 우측 중에 하나라도 True 면 True 이다.
  • not 은 결과의 반대로 출력된다

예시

💻 마크다운

# and
print(True and True) 
print(True and False)
print(False and False)
print()
# or
print(True or True)
print(True or False)
print(False or False)
print()
# not
print(not True)
print(not False)
print()
# 연산자
print(4 > 9) # 4는 9의 초과이다.
print(5 >= 5) # 5는 5의 이상이다.
print(9 < 4) # 9는 4의 미만이다.
print(5 <= 6) # 5는 6의 이하이다.
print(3 == 3) # 3은 3와 같다.
print(3 != 3) # 3은 5와 같지 않다.

👀 결과

# and
True
False
False

# or
True
True
False

# not
False
True

# 연산
False
True
False
True
True
False

type 함수

  • 이 값이 어떤 자료형인지 아닌지 확인하는 함수이다.

예시

💻 마크다운

print(type(5))
print(type(5.2))
print(type("5"))
print(type(True))

👀 결과

<class 'int'>
<class 'float'>
<class 'str'>
<class 'bool'>

형변환

  • 형 변환을 이용하여 한 자료형에서 다른 자료형으로 바꿀 수 있다.
  • int를 이용하여 정수형으로 바꿀 수 있다.
  • float를 이용하여 소수형으로 바꿀 수 있다.
  • str을 이용하여 문자열로 바꿀 수 있다.

예시

💻 마크다운

#정수형으로
print(int(6.3)) # 소수형 > 정수형
print(int("5")) # 문자열 > 정수형
print()
# 소수형으로
print(float(6)) # 정수형 > 소수형
print(float("4.7")) # 문자열 > 소수형
print(type(float("4.7"))) 
print()
# 문자열으로
print(str(5)) # 정수형> 문자열
print(type(str(5))) 

print(str(7.4)) # 소수형 > 문자열
print(type(str(7.4))) 

👀 결과

# 정수형으로
6
5

# 소수형으로
6.0
4.7
<class 'float'>

# 문자열으로
5
<class 'str'>
7.4
<class 'str'>

문자열 포맷팅

  • 형변환과 문자열 덧셈 연산으로만 코드를 자면 너무 길어지고 이해하기도 힘들어진다. 그래서 '문자열 포맷팅(String Formatting)'을 사용해서 코드를 보기 좋게 만들어 주는게 필요하다.
  • %d는 정수형을 말한다.
  • %f는 소수형을 말하고 %.2f 같은 형식으로 소수점 자리수를 정해줄 수 있다.
  • %s는 문자열을 말한다.

예시

💻 마크다운

name = "최대환"
age = 24
country = "한국"

# 문자열 포맷팅 없이 쓰면
print("저의 이름은" + name + "입니다.")
print("저는" + str(age) + "살이고 " + country + "에서 태어났습니다")
print()

# 문자열 포맷팅을 이용하면
print("저의 이름은 %s 입니다" % (name))
print("저는 %d살이고 %s에서 태어낫습니다" % (age, country))
print()

# 소수점 포맷팅
print(1 / 3)
print("1 나누기 3은? %.f" % (1 / 3)) # 그냥 소수형 포맷팅
print("1 나누기 3은? %.2f" % (1 / 3)) # 소수점 2번째 자리까지만 표현

👀 결과

# 문자열 포맷팅 없이 쓰면
저의 이름은최대환입니다.
저는24살이고 한국에서 태어났습니다

# 문자열 포맷팅을 이용하면
저의 이름은 최대환 입니다
저는 24살이고 한국에서 태어났습니다

# 소수점 포맷팅
0.3333333333333333
1 나누기 3은? 0
1 나누기 3은? 0.33
profile
나의 개발지식 output 공간

0개의 댓글