Python/Python 기초문법

Python - 데이터 타입

GinaKim 2023. 12. 30. 17:22
728x90

파이썬의 자료형에는 숫자형, 불리언(Boolean), 시퀀스(Sequence Type), 집합(Set), 사전(Dictionary)이 있다.

어떤 종류의 데이터 타입이 있는지와 각 종류에 따라 어떤 연산방법이 있는지 아는 것이 중요!

1. 숫자형

- int

정수형

a = 1
b = 0
c = -1

 

- float

실수형

a = 1.1
b = 3.5

 

2. 불리언

-  Bool

True와 False의 두 가지 값을 갖는 자료

Print(type(True))
Print(type(False))
-------------------
# result 
<Class 'bool'>

 

3. 시퀀스

문자열, 리스트, 튜플 같은 자료형을 시퀀스 자료형이라 함

시퀀스 자료형에 포함된 각 객체는 순서를 가지고 인덱스를 참조할 수 있으며, 공통적으로 적용되는 특성이 있음

(ex. indexing, slicing, +, *, in, len)

3-1. 문자열

- str

""또는 ''로 지정

print('Hello World')
print("Hello World")
----------------------
# result
Hello World
Hello World

 

여러줄인 str을 선언하려면 따옴표 세개씩 써야 함 ''' or """

print('''
첫째줄
둘째줄
셋째줄
''')
-----------------------
# result
첫째줄
둘째줄
셋째줄

 

숫자도 따옴표로 묶으면 문자로 나옴

print('1'+'1')
--------------------------------------
# result
11

 

문자열에서도 더하기와 곱하기 사용 가능 

a = 'Enjoy '
b = 'Python!'
print(a + b)
print(a * 3)
-------------------------------------------
# result
Enjoy Python!
Enjoy Enjoy Enjoy

 

3-2. 리스트

- List

리스트는 대괄호([])를 사용하여 정의

리스트 안의 데이터는 "요소(Element)"라고 부르며, 리스트 안의 각 요소는 고유한 위치(Index)를 가지고 있다.

인덱스는 0부터 시작하며, 리스트의 첫번째 문자의 인덱스는 0이 됨

리스트 안의 요소들은 서로 다른 자료형의 요소를 가질 수 있다.

 

  • 인덱싱(Indexing): 리스트에서 특정 데이터 추출 
student1 = [90, 95, 85, 100]

print(student1[0])
print(student1[1])
print(student1[2])
print(student1[3])
--------------------------------
# result
90
95
85
100

 

음수 인덱스는 리스트의 뒤에서부터 접근하는 것

mixed = [0, 2, 3.14, 'python', True, ['James', 'Robert', 'Lisa', 'Mary', 'Kim']]
mixed[-1][-1][-3]
---------------------------------
# result
'k'

 

  • 리스트 수정 및 삭제
student1 = [90, 95, 85, 100]

student1[0] = 99 #새로운 데이터 할당, 0번째 인덱스
student1
----------------------------
# result
[99, 95, 85, 100]

 

 

  • 덧셈 연산자, 곱셈 연산자 적용 
myFriends = ['James', 'Robert', 'Lisa', 'Mary']
newFriends = ['Kim']

myFriends2 = myFriends + newFriends
print(myFriends2)
----------------------------------------------------
# result
['James', 'Robert', 'Lisa', 'Mary', 'Kim']
myNumbers = [1]
myNumbers * 3
-----------------
# result
[1, 1, 1]

 

  • 슬라이싱 : [start:end:step]

    슬라이싱은 문자열에서 일부분을 추출하는 것

    start는 추출하고싶은 요소의 시작 위치, end는 끝위치, step은 생략 가능

list_data = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list_data)
print(list_data[0:3]) # 0번째부터 3번째 요소 전까지를 추출

#5까지 추출
print(list_data[0:6])
print(list_data[:6]) #처음부터 6번째까지 조회
print(list_data[4:10])
print(list_data[4:]) # 끝까지 다 조회
print(list_data[:]) # 모든 데이터 조회
print(list_data[::2])
-------------------------------------------
# result
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2]
[0, 1, 2, 3, 4, 5]
[0, 1, 2, 3, 4, 5]
[4, 5, 6, 7, 8, 9]
[4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 2, 4, 6, 8]

3-3. 튜플

- Tuple

튜플은 리스트와 유사

튜플은 괄호(())를 사용하여 정의

튜플은 리스트와 달리 수정 삭제가 불가능

student1 = (90, 95, 85, 100)

print(student1[0])
print(student1[1]) 
print(student1[2]) 
print(student1[3])
--------------------------------
# result
90
95
85
100

 

4. 딕셔너리

- Dictionary

딕셔너리는 중괄호 ({}) 를 사용하여 정의

key - value로 구성되며, 여러 자료형으로 key와 value 설정 가능

key값을 통해 value값을 조회하며, key값은 유일해야 함 (동일한 키 값 사용 x)

수정 삭제 가능

country_capital = {
    "대한민국" : "서울",
    "프랑스" : "파리",
    "미국" : "워싱턴",
    "영국" : "런던"
}

country_capital 
-------------------------------------------------------
# result
{'대한민국': '서울', '프랑스': '파리', '미국': '워싱턴', '영국': '런던'}

 

  • 딕셔너리에서 value 값을 조회하는 방법은 key 값을 통해 조회
country_capital['대한민국'] 
----------------------------
# result
'서울'

 

  • value값 수정
country_capital['대한민국'] = '부산'
country_capital 
---------------------------------------------------------------------
# result
{'대한민국': '부산', '프랑스': '파리', '미국': '워싱턴', '영국': '런던'}

 

  • del
del country_capital['영국']
country_capital
-----------------------------------------------------
# result
{'대한민국': '부산', '프랑스': '파리', '미국': '워싱턴'}

 

  • key값은 두고 value 값만 삭제하고 싶을때
country_capital['프랑스'] = None
country_capital 
---------------------------------------------------
# result
{'대한민국': '부산', '프랑스': None, '미국': '워싱턴'}

 

  • 추가생성
country_capital['일본'] = '도쿄'
country_capital
---------------------------------------------------------------------
# reult
{'대한민국': '부산', '프랑스': None, '미국': '워싱턴', '일본': '도쿄'}
new_df = {'중국' : '베이징', '필리핀' : '마닐라', '호주' : '캔버라'}
country_capital.update(new_df)
country_capital 
--------------------------------------------------------------------------------------------------------------------------
# result
{'대한민국': '부산', '프랑스': None, '미국': '워싱턴', '일본': '도쿄', '중국': '베이징', '필리핀': '마닐라', '호주': '캔버라'}

 

  • Dictionary의 모든 항목 삭제
country_capital.clear() 
country_capital
----------------------------
# result
{}

5. 집합

- set

중복된 값이 없는 유일한 값들의 모임

집합은 중괄호 ({})를 사용하여 정의

순서가 없는 데이터 구조이므로, 인덱스로 접근이 불가

country_capital = {'대한민국', '프랑스', '미국', '영국'}
728x90