[위 글은 "점프 투 파이썬(박응용 지금/위키독스)", 조코딩 "최신 파이썬 코딩 무료 강의 | 2024 점프 투 파이썬 통합본"을 참고하여 만들었습니다.]
4. 튜플(tuple) 자료형
튜플(tuple)은 몇 가지만 제외하고 리스트와 비슷하다. 리스트와 다른 점은 아래와 같다.
- 리스트는 [], 튜블 ()으로 둘러싼다.
- 리스트는 요솟값의 생성, 삭제, 수정이 가능하지만, 튜플은 요값을 바꿀 수 없다.
- 리스트는 Mutable, 튜플은 Immutable
* muttable과 immutable의 차이 *
Python에서 두 개념의 차이는 객체의 변경 가능성을 나타낸다. 데이터의 불변성을 보장한다는 특징을 가진다.
여기서 '객체'란 데이터와 그 데이터에 관련된 동작을 하나로 묶은 것을 의미한다. 이는 클래스로 구현한다. 객체 지향 프로그래밍 패러다임에서 중요하게 쓰이므로 관련 자료를 첨부하겠다.
https://supersumin.tistory.com/12
- 튜플 선언 방식
리스트와 유사하나
- t2 = (1,) //요소가 1개라도 쉼표가 들어가야 한다.
- t4 = 1, 2, 3처럼 소괄호를 생략해도 된다.
- 튜플의 요솟값을 지우거나 변경하려고 하는 경우
다음은 튜플의 요소를 지우거나 변경하는 경우이다
두 경우 오류가 나는 것을 확인할 수 있다.
- 튜플 다루기
튜플은 요솟값을 변화시키는 것만 제외하면 리스트와 완전히 동일하다. 아래의 예시를 살펴보자
튜플은 리스트와 비슷한 기능을 하니 리스트를 참고해보자
https://supersumin.tistory.com/10
2장 파이썬 프로그래밍의 기초, 자료형(리스트)-(2)
[위 글은 "점프 투 파이썬(박응용 지금/위키독스)", 조코딩 "최신 파이썬 코딩 무료 강의 | 2024 점프 투 파이썬 통합본"을 참고하여 만들었습니다.] 3. 리스트 자료형리스트 자료형은 Python에서 다
supersumin.tistory.com
5. 딕셔너리(dictionary) 자료형
말 그대로 사전이라는 뜻이다.
Python에서 데이터를 관리할 때 리스트를 사용하면 원하는 값을 찾기 위해 저장된 모든 값을 순서대로 하나씩 확인해야 하지만 데이터를 이름으로 찾을 수 있다면 더 빠르고 효율적으로 처리할 수 있게 된다. 그럴 때 사용되는 것이 dictionary이다.
딕셔너리는 Key-Value 쌍을 데이터로 이루어져 있으며 원하는 정보의 이름인 Key를 통해 원하는 데이터의 정보인 Value를 바로 사용할 수 있다.
복잡한 데이터 구조를 쉽게 관리하고 이해할 수 있는 특성으로 인해 API에 자주 활용된다. 딕셔너리는 JSON(JavaScript Object Notation)과 유사한 구조를 가지고 있어, JSON 포맷으로 쉽게 변환할 수 있다는 특징이 있어 API 데이터 전송에 있어 큰 장점이 된다.
- 딕셔너리 선언
Key: Value 형태로 이루어져 있다.
- 딕셔너리 쌍 추가, 삭제하기
- 딕셔너리 쌍 추가하기
- 딕셔너리 요소 삭제하기
- 딕셔너리 사용하는 방법
- 딕셔너리에서 key를 사용해 Value 얻기
- 딕셔너리를 만들 때 주의할 사항
- Key 값이 중복되면 덮어써진다
Key는 고유한 값이며 Key를 통해 Value를 얻기 때문에 중복된다면 제일 마지막 Value로 덮어써진다.
- Key에 리스트는 쓸 수 없다
Key에는 mutable한 값을 사용할 수 없고 immutable 해야 한다. Value는 mutable이든 immutable이든 아무 값이나 넣을 수 있다.
Key Immutable한 이유에는 여러 가지가 있지만 일단은 Key가 변경되면 딕셔너리에서 해당 키를 찾을 수 없게 될 수도 있으며 일관성이 깨지기 때문이라고 알고 넘어가자
- 딕셔너리 관련 함수
6. 집합(Set) 자료형
집합(set)은 집합에 관련된 연산을 처리하기 위해 만든 자료형이다.
- 집합 선언 방법
중괄호 '{}'를 사용하여 집합을 선언한다. 중괄호 안에 Key-Value 쌍이 하나라도 있으면 문법적으로 잘못된 것으로 오류를 리턴한다.
- 집합 자료형의 특징
- 중복을 허용하지 않는다.
집합은 같은 원소가 중복으로 존재할 필요가 없으므로 같은 값은 사라진다. 그렇기에 set은 데이터의 중복을 제거하기 위한 필터로 종종 사용된다.
- 순서가 없다.
리스트나 튜플과 달리 집합은 순서가 없기 때문에 인덱싱을 통해 요솟값을 얻을 수 없다.
만약 set 자료형에 저장된 값을 인덱싱으로 접근하려면 리스트 혹은 튜플로 자료형을 전환해야 한다.
- 교집합, 합집합, 차집합 구하기
- 집합 자료형 관련 함수
7. 불(Bool) 자료형
참(True)과 거짓(False)을 나타내기 위한 자료형이다. 이 자료형은 조건문이나 논리 연산 등에서 주로 사용된다.
True: 참을 의미한다.
False: 거짓을 의미한다.
- 자료형의 참과 거짓
문자열, 리스트, 튜플, 딕셔너리 등의 값이 비어 있으면 거짓이 되고 비어있지 않으면 참이 된다.
조건문과 반복문 등에 쓰이므로 응용은 추후 알아보자.
- 불 연산
bool()을 통해 자료형의 참과 거짓을 확인할 수 있다.
8. 자료형의 값을 저장하는 공간, 변수
변수는 비유적으로
a라는 상자에 [1, 2, 3] 값을 가지는 리스트 데이터 즉, 객체를 담는 것이라고 할 수 있다. 실제 컴퓨터에서 어떠한 연산이 작용하는지 알아보자
변수는 메모리에 저장된 값을 참조하는 이름이다. 변수는 값이 저장된 메모리 주소를 가리키게 되며 같은 주소에 있는 갑은 변수명이 다르더라도 서로 값에 접근할 수 있다.
* id() *
객체의 주소 값을 리턴하는 파이썬의 내장 함수
- 리스트를 복사하고자 할 때
변수 b를 생성할 때 변수 a의 값을 가져오면서 a와는 다른 주소를 가리킬 수 있도록 선언하는 방법에 대해 알아보자
- [:] 이용하기
- copy 모듈 이용하기
b is a가 False라는 것은 b와 a는 서로 다른 객체라는 것이다.
- 변수를 만드는 여러 가지 방법
'파이썬' 카테고리의 다른 글
변수는 자료의 주소를 담는 박스임을 알면 Call-by-value, Call-by-reference, 얕은 복사, 깊은 복사 이런 거 껌이다 (0) | 2024.08.13 |
---|---|
3장 프로그램의 구조를 쌓는다! 제어문 (0) | 2024.08.07 |
2장 파이썬 프로그래밍의 기초, 자료형(리스트)-(2) (0) | 2024.08.01 |
묵시적 형변환과 명시적 형변환 (0) | 2024.07.29 |
2의 보수(two's complement)에 대한 또 다른 해석 (0) | 2024.07.29 |