본문 바로가기
Programming/PYTHON

파이썬 프로그래밍의 기초, 자료형

by akter 2022. 2. 27.

자료형이란?

프로그램이 인식하는 자료의 형태


자료형 종류

자료에 대한 타입

  • 숫자, 문자열, 불

어떤 값을 담는 자료구조

  • 변수, 리스트, 튜플, 딕셔너리, 집합

변수란?

어떤 값을 담는 상자

ex) a = 3, a = a + 1


숫자형

  • 정수형 (1, 2, -2) int
  • 실수 (1.24, -34.56) float
  • 컴퓨터식 지수 표현 방식 (4.24e10, 4.24e-10) float
  • 8진수 (0o37)
  • 16진수 (0x7A)

사칙연산

>>> a = 3
>>> b = 4
>>> a + b
7
>>> a * b
12
>>> a / b
0.75

 

제곱

>>> a = 3
>>> b = 4
>>> a ** b	# a의 b제곱
81

 

% 연산자

>>> 7 % 3	# 나머지
1
>>> 3 % 7	# 나머지
3

 

// 연산자

>>> 7 / 4	# 나누기
1.75
>>> 7 // 4	# 나눈 몫
1

문자열 자료형

문자열 자료형 만드는 4가지 방법

"Hello World"
'python is fun'
"""Life is too short, You need python"""
'''Life is too short, You need python'''

 

문자열에 따옴표 포함시키기

>>> food = "Python's favorite food is perl"
>>> say = '"Python is very easy. "he says.'
>>> food = 'Python\'s favorite food is perl'
>>> say = "\"Python is very easy.\" he says."

 

여러 줄로 이루어진 문자열

>>> multiline = "Life is too short\nYou need python"
>>> multiline = '''
...Life is too short
...You need python
...'''

 

이스케이프 코드란?

코드 설명
\n 문자열 안에서 줄을 바꿀 때 사용
\t 문자열 사이에 탭 간격을 줄 때 사용
\\ 문자 \를 그대로 사용할 때 사용
\' 작은 따옴표(')를 그대로 사용할 때 사용
\" 큰 따옴표(")를 그대로 사용할 때 사용

 

문자열 더해서 연결하기 (Concatenation)

>>> head = "Python"
>>> tail = "is fun!"
>>> head + tail
'Python is fun!'

 

문자열 곱하기

>>> a = "Python"
>>> a * 2
'PythonPython'

 

인덱싱(Indexing)

>>> a = "Life is too short, You need Python"
>>> a[0]
'L'
>>> a[12]
's'
>>> a[-1]
'n'

 

파이썬은 0부터 숫자를 센다

슬라이싱(Slicing)

>>> a = "Life is too short, You need Python"
>>> a[0:4]
'Life'
>>> a = "20010331Rainy"
>>> date = a[:8]
>>> weather = a[8:]
>>> date
'20010331'
>>> weather
'Rainy'

 

a[이상:미만:간격]

문자열 포매팅

>>> "I eat %d apples." % 3
'I eat 3 apples.'
>>> number = 10
>>> day = "three"
>>> "I ate %d apples. so I was sick for %s days." % (number, day)
' I ate 10 apples. so I was sick for three days.'

 

문자열 포맷 코드

코드 설명
%s 문자열(String)
%c 문자 1개(Character)
%d 정수(Integer)
%f 부동 소수(Floating-point)
%o 8진수
%x 16진수
%% Literal % (문자 '%' 자체)

 

정렬과 공백

>>> "%10s" % "hi"
'          hi'
>>> "%-10sjane." % 'hi'
'hi          jane.'

 

소수점 표현

>>> "%0.4f" % 3.42134234
'3.4213'
>>> "%10.4f" % 3.42134234
'          3.4213'

 

문자열 개수 세기(count)

>>> a = "hobby"
>>> a.count('b')
2

 

위치 알려주기1(find)

>>> a = "Python is best choice"
>>> a.find('b')
10
>>> a.find('k')
-1

 

위치 알려주기2(index)

>>> a = "Life is too short"
>>> a.index('t')
8
>>> a.index('k')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found

 

문자열 삽입(join)

>>> a = ","
>>> a.join('abcd')
'a,b,c,d'

 

소문자를 대문자로 바꾸기(upper)

>>> a = "hi"
>>> a.upper()
'HI'

 

대문자를 소문자로 바꾸기(lower)

>>> a = "HI"
>>> a.lower()
'hi'

 

양쪽 공백 지우기(strip)

>>> a = " hi "
>>> a.strip()
'hi'

 

문자열 바꾸기(replace)

>>> a = "Life is too short"
>>> a.replace("Life", "Your leg")
'Your leg is too short'

 

문자열 나누기(split)

>>> a = "Life is too short"
>>> a.split()
['Life', 'is', 'too', 'short']
>>> a = "a:b:c:d"
>>> a.split(":")
['a', 'b', 'c', 'd']

 


리스트 자료형

리스트의 인덱싱

>>> a = [1, 2, 3]
>>> a[0]
1
>>> a[0] + a[2]
4
>>> a[-1]
3

 

리스트의 슬라이싱

>>> a = [1, 2, 3, 4, 5]
>>> a[0:2]
[1, 2]
>>> b = a[:2]
>>> c = a[2:]
>>> b
[1, 2]
>>> c
[3, 4, 5]

 

리스트 더하기

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> a + b
[1, 2, 3, 4, 5, 6]

 

리스트 반복하기

>>> a = [1, 2, 3]
>>> a * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]

 

리스트에서 하나의 값 수정하기

>>> a = [1, 2, 3]
>>> a[2] = 4
>>> a
[1, 2, 4]

 

리스트에서 연속된 범위의 값 수정하기

>>> a[1:2]
[2]
>>> a[1:2] = ['a', 'b', 'c']
>>> a
[1, 'a', 'b', 'c', 4]

 

[ ] 사용해 리스트 요소 삭제하기

>>> a = [1, 'a', 'b', 'c', 4]
>>> a[1:3] = []
>>> a
[1, 'c', 4]

 

del 함수 사용해 리스트 요소 삭제하기

>>> a
[1, 'c', 4]
>>> del a[1]
>>> a
[1, 4]

 

리스트에 요소 추가(append)

>>> a = [1, 2, 3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]

 

리스트 정렬(sort)

>>> a = [1, 4, 3, 2]
>>> a.sort()
>>> a
[1, 2, 3, 4]

 

리스트 뒤집기(reverse)

>>> a = ['a', 'c', 'b']
>>> a.reverse()
>>> a
['b', 'c', 'a']

 

위치 반환(index)

>>> a = [1, 2, 3]
>>> a.index(3)
2
>>> a.index(1)
0

 

리스트에 요소 삽입(insert)

>>> a = [1, 2, 3]
>>> a.insert(0, 4)
[4, 1, 2, 3]

 

리스트 요소 제거(remove)

>>> a = [1, 2, 3, 1, 2, 3]
>>> a.remove(3)
[1, 2, 1, 2, 3]

 

리스트 요소 끄집어내기(pop)

>>> a = [1, 2, 3]
>>> a.pop()
3
>>> a
[1, 2]

 

리스트에 포함된 요소 x의 개수 세기(count)

>>> a = [1, 2, 3, 1]
>>> a.count(1)
2

 

리스트 확장(extend)

>>> a = [1, 2, 3]
>>> a.extend([4, 5])
>>> a
[1, 2, 3, 4, 5]
>>> b = [6, 7]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6, 7]

댓글