TIL#Python Data Types(자료형) 2편

0
post-thumbnail

TIL#Python Data Types(자료형) 2편

Today we will discuss about is the " Tuple type","Dictionary type", "Bool type","Set type"

지난 시간에 있어서 이번 편에서는 튜플과 딕셔너리 타입, 불린형, 집합형에 대해 알아보고 리스트와 튜플의 차이와 set과 dictionary type의 차이에 대해 알아보자!

1. 튜플(Tuple) type

튜플(Tuple)은 리스트와 비슷하지만 몇가지 다른 특성을 가지고 있다. Tuple은 일반적으로 2개에서 5개 사이의 요소들을 저장할때 사용되며, 수정이 필요없고 간단한 형태의 데이터를 표현할때는 tuple을 주로 사용한다

튜플(Tuple)이 list(리스트)는 비슷한거 같은 뚜렷한 차이점이 있으며 이에 대해 알아보자.

리스트와 다른 튜플(Tuple)의 특징은 아래와 같이 정리 할 수 있다.

  1. 튜플은 선언시 자료형을 선언할 때, 튜플은 소괄호 ( ) 로 둘러 싸는 반면, 리스트는 대괄호 [ ] 로 둘러싼다.
  2. 리스트는 Mutable 변수이고 튜플(Tuple)은 Immutable변수로 값이 변하지 않기를 원한다면 튜플을 사용해야 하며, 리스트는 수시로 그 값이 변화 시킬 수 있다. 즉, 값을 추가, 수정 ,삭제가 불가능하다.
Mutable 과 Immutalbe 자료형을 구분하면 아래와 같다.

Immutable : string, number,

Mutable: dictionary, list

튜플 다루기(Tuple handling)

인덱싱과 슬라이싱, 길이 구하기 전부 리스트와 비슷하게 사용한다.

i_am_tuple = (1,2,"a","B",4)
len(i_am_tuple) >> 5
i_am_tuple[0] = 1
i_am_tuple[1:] >> (2,"a,"B",4)                   

2. 딕셔너리(Dictionary)type

파이썬에서는 대응 관계를 나타내는 자료형을 갖고 있는데, 이러한 자료형을 딕셔너리(Dictionary)라고 한다.

딕셔너리의 특징은 아래와 같다.

  • 중괄호 { } 를 사용해 dictionary를 선언한다.
  • key 와 value 의 값으로 이루어져 있다. key 값이 먼저 나오고 그리고 : 이 위치하고 그 다음에 value 값이 나온다.
  • 각각의 key : value 들은 comma 로 구분한다.

딕셔너리 다루기(Dictionary handling)

Dictionary 에서 element를 읽어 들이는 방법은 list와 유사합니다. 리스트나 튜플이 순차적으로 해당 요솟값을 구한다고 하면, 요소의 index를 사용하는것이 아니라 key 값을 사용한다는 점입니다.

딕셔너리 요소(Dictionary element) 추가하기

요소를 추가할 시 dictionary_name[new_key] = new_value 이렇게 요소를 사용하면 추가 할 수 있다.

a = { 0: "A"}
a[2] = "B"
print(a) >> {0: 'A', 2: 'B'}

딕셔너리 요소(Dictionary element) 삭제 및 수정하기

딕셔너리 요소 삭제시 문법은 del dictionry_name[key] 으로 사용하며, 지정한 key에 해당하는 key:value가 쌍으로 삭제된다. 요소 수정시에는 list와 유사하나 index가 아니라 key 값을 사용하여 수정이 가능하며, dictionay_name[만들 keyname] = 원하는value로 사용할 수 있다.

my_dict = { "one": 1, 2: "two", 3 : "three" }
my_dict["four"] = 4
print(my_dict)
> {'one': 1, 2: 'two', 3: 'three', 'four': 4
del my_dict[3]
print(my_dict) >> {'one': 1, 2: 'two', 'four': 4}

딕셔너리(Dictionary) 관련 함수

*Dictname.keys(), dictname.items(), dictname.clear(),dictname.get()*, key in dictname

my_dict = {'one': 1, 2: 'two', 'four': 4}

print(my_dict.keys()) >> dict_keys(['one', 2, 'four'])
print("one" in my_dict) >> True
print(my_dict.items()) >> dict_items([('one', 1), (2, 'two'), ('four', 4)])
print(my_dict.get("one")) >> 1
print(my_dict.clear()) >> None

3. 집합 자료형(Set type)

집합 자료형은 말에서 알 수 있듯이 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형이다.

List와 마찬가지로 여러 다양한 타입의 요소(element)들을 저장할 수 있습니다.

집합 자료형(Set type)의 특징

  • 중복된 값을 저장 할 수 없다.
  • 순서가 없다(Unordered) 그래서, list와 tuple과 달리 indexing이 불가하다.
  • 새로 저장하려는 값이 중복된다면, 새로운 요소가 이전 요소를 치환(replace)한다.

집합자료형을 만드는 방법 set() 함수 이용하여 list를 set로 바꾸고 싶을때 사용하며, set() 괄호 안에 list를 작성하여 생성 할 수 있다. 다른 방법으로는 중괄호 ({ }) 를 사용하여 할 수 있다는 점이다.

i_am_set = set("hello")

print(i_am_set) >> {'o', 'h', 'e', 'l'}

Set 함수이용하기

교집합(intersection), 합집합(Union), 차집합(difference)

set1 = {1, 2, 3, 4, 5, 6}
s2 = {4,5,6}

print(set1.intersection(s2)) >> {4, 5, 6}
print(set1 &s2) >> {4, 5, 6}
print(set1 | s2) >> {1, 2, 3, 4, 5, 6}
print(set1.union(s2)) >>{1, 2, 3, 4, 5, 6}
print(set1 - s2) >> {1, 2, 3}
print(set1.difference(s2))  >> {1, 2, 3}

Add , updte, remove

ADD : 값을 1개 추가하기
show_me_the_function = {1,2,3}
show_me_the_function.add("A")
print(show_me_the_function) >>> {'A', 1, 2, 3}

Update: 값 여러개 추가하기
show_me_the_function.update([4,5,6])
print(show_me_the_function)  >>>{1, 2, 3, 4, 5, 6, 'A'}

remove: 특정 값 제거하기
show_me_the_function.remove(2)
print(show_me_the_function) >>{1, 3, 4, 5, 6, 'A'}

4. 불(boolType) 자료형


불 자료형 이란 참(True)와 거짓(False)을 나타내는 자료형이다.

profile
문과생 개발자되다

0개의 댓글