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)쌍으로 대체된다. 

 

 

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기