python에는 여러 가지의 자료 형태가 있다.
그래서 코드를 짤때 자료 형태의 특성을 잘 이해하고 활용하는 게 중요하다.
본문에서는 자료구조들 중 List, Set, Tuple, Dictionary를 설명하고자 한다.
3) Tuple
Tuple의 특징은 순서는 있지만 수정이 안된다는 것이다. 그 외에는 List자료형과 유사하지만
indexing,slicing,in 등등 list에서 쓰이는 몇몇 operator를 사용할 수 있다.
- Tuple 생성하기
여기서 주의할 점은 int형태의 값을 1개만 받는 tuple을 만들때를 생각해봐야 한다. 왜냐하면 소괄호는 연산을 할때도 쓰이기 때문이다. 아래 코드를 보자
- Tuple 수정하기
tuple의 가장 큰 특징은 수정이 안된다는 것이다.
여기서 주의해야 할점은 여기서 주의해야 할점은 num_of_fruits같은 경우에는 list안에 있는 원소를 수정할 수있다는 것이다.
정리를 하자면 tuple의 있는 원소를 바꿀 수는 없지만 만약 그 원소가 자체적으로 변경이 가능한
원소라면 그 원소 자체적으로는 변경할 수 있다. 아래 코드를 보면 좀더 이해하기 쉬울것이다.
하지만 추가는 가능하다! (삭제는 안된다)
- Tuple을 통해 동시에 여러 변수에 값 할당하기
tuple을 이용하면 다음 코드와 같은게 가능하다.
좀 더 응용해보자
4) Dictionary
dictionary형 자료는 말그대로 사전과 비슷하다. value값과 key값이 있으며 key값을 통해 value값을 얻을 수 있다.
dictionary의 특징은 set형태와 같이 원소들의 순서가 없다.
- dictionary 생성하기
dictionary를 중괄호를 이용해
{key1:value1,key2:value2.....key n:value n}이런 형식으로 만들면 된다.
주의할점
- key값이 중복되면 안된다.
- key값이 수정할 수 없는 형태가 와야한다(list,dic,tuple 등은 key값으로 설정이 안된다)
- 기본적인 Dictionary 사용
단어 뜻 그대로 사전을 생각하면 된다.주의 해야할점은
dictionary는 순서형이 아니때문에 index가 없다.오직 key값을 이용해야 한다.
- Dictionary 수정하기
dictionary는 수정이 가능한 자료형태이기 때문에 값을 추가,삭제,변경이 가능하다.
- Dictionary의 함수들
1. D.clear(): D에 있는 모든 값을 지운다
2. D.get(k): key k에 묶여있는 value 값을 반환한다.이때 key k는 D에 포함되어 있어야 한다.
3. D.get(k,v): key k에 묶여 있는 value 값을 반환한다.만약 dictionary D에 key k가 없다면 v를 반환한다.
4. D.keys(): dictionary D에 있는 모든 key 값을 반환한다.이때 반환형태는 dict_keys 다/dict_key는 list 처럼 활용할수 있다. 단 append,insert,pop,remove,sort함수는 사용 불가능 하다.
5. D.values(): dictionary D에 있는 모든 value 값을 반환한다.반환형태는 dict_keys와 유사한 dict_values다.
6. D.items(): dictionary D에 있는 모든 (key,value)쌍을 반환한다.반환형태는 마찬가지로 dict_keys와 유사한 dict_items다.
7. D.pop(k): key k에 묶여 있는 value 값을 반환 후 D에 있는 (key k,value)쌍을 지운다.
8. D.pop(k,v): key k에 묶여 있는 value 값을 반환 후 dictionary D에 있는 (key k,value)쌍을 지운다.만약 key k가 dictionary D에 없다면 그냥 v를 반환한다.
9. D.setdefault(k): key k에 묶여있는 value 값을 반환한다.
10. D.setdefalut(k,v): key k에 묶여 있는 value 값을 반환한다.만약 dictionary D에 key k가 없다면 v를 반환하고 D에 (key k,value v)쌍을 추가한다.
11. D.update(other): dictionary other에 있는 (key,value)쌍들을 dictionary D에 추가한다. 만약 other에 있는 key값이 이미 D에 있다면 other에 있는 (key,value)쌍으로 대체된다.
'데이터 사이언스 메뉴얼 > python' 카테고리의 다른 글
(SM) 융합연구 1 - 파이썬 출력,연산,변수,타입 (1) | 2020.03.30 |
---|---|
Python 자료 구조에 대해 알아보자-(1)(List,Set) (0) | 2020.03.29 |
융합연구 1 - 조건문, 반복문 (0) | 2020.03.29 |
파이썬 클래스, Python Class (0) | 2020.03.28 |
최근댓글