[Python] 1. 자료형 정리 및 예제풀이
📢Key Words: 자료형, 제어문, 함수
점프 투 파이썬을 참고한 내용 정리
- https://wikidocs.net/11 해당 링크 참조
1. 숫자형
01. 숫자형이란?
- 숫자형태로 이루어진 자료형이다.
- 정수, 실수, 8진수, 16진수 등이 있다.
-
항목 사용 예 정수 123, -345, 0 실수 123.45, -1234.5, 3.4e10 8진수 0o34, 0O25 16진수 0x2A, 0xFF - 8진수나 16진수는 파이썬에서 잘 사용하지 않는다.
02. 연산자
- 사칙연산
- ** 연산자
- % 연산자
- // 연산자
02. 문자열 자료형
01. 문자열이란?
02. 문자열은 어떻게 만들고 사용할까?
03. 문자열 안에 작은따옴표나 큰따옴표를 포함시키고 싶을 때
04. 문자열 연산
05. 문자열 인덱싱과 슬라이싱
- a[0:3]을 수식으로 나타내면 다음과 같다.
0 <= a < 3
06. 문자열 포매팅
- 문자열 안에 2개 이상의 값 넣기
number = 10 day = "three" "I ate %d apples. so I was sick for %s days." % (number, day) 'I ate 10 apples. so I was sick for three days.'
07. 문자열 관련 함수들
- 문자열 안에 2개 이상의 값 넣기
2. 리스트 자료형
01. 리스트는 어떻게 만들고 사용할까?
- 리스트는 데이터를 바꿀 수 있지만, 문자열은 데이터를 바꿀 수 없습니다.
02. 리스트의 인덱싱과 슬라이싱
03. 리스트 연산하기
04. 리스트의 수정과 삭제
05. 리스트 관련 함수들
3. 튜플 자료형
01. 튜플이란?
- 리스트의 가장 큰 차이는 값을 변화시킬 수 있는가 여부
- 리스트의 항목 값은 변화가 가능하고 튜플의 항목 값은 변화가 불가능하다.
- t2 = (1,)처럼 단지 1개의 요소만을 가질 때는 요소 뒤에 콤마(,)를 반드시 붙여야 한다는 것과 t4 = 1, 2, 3처럼 괄호( )를 생략해도 무방
- 실제 프로그램에서는 값이 변경되는 형태의 변수가 훨씬 많기 때문에 평균적으로 튜플보다는 리스트를 더 많이 사용
02. 튜플의 요소값을 지우거나 변경하려고 하면 어떻게 될까?/span>
- 오류가 발생
03. 튜플 다루기/span>
- 튜플은 값을 변화시킬 수 없다는 점만 제외하면 리스트와 완전히 동일
4. 딕셔너리 자료형
01. 딕셔너리란?
- 대응 관계를 나타낼 수 있는 자료형
- Key를 통해 Value를 얻는다
dic = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
- Value에 리스트도 넣을 수 있다
- 딕셔너리의 키로는 변하는(mutable) 값을 사용할 수 없다.
02. 딕셔너리는 어떻게 만들까?
>>> dic = {'name':'pey', 'phone':'0119993323', 'birth': '1118'} >>> dic['name'] 'pey' >>> dic['phone'] '0119993323' >>> dic['birth'] '1118'
- del a[key]
03. 딕셔너리 쌍 추가, 삭제하기
>>> a = {1: 'a'} >>> a[2] = 'b' >>> a {1: 'a', 2: 'b'}
- del a[key]
- 인덱싱 방법을 적용할 수 없다.
04. 딕셔너리를 사용하는 방법
- Key는 고유한 값이므로 중복되는 Key 값을 설정해 놓으면 하나를 제외한 나머지 것들이 모두 무시
05. 딕셔너리 관련 함수들
- a.keys()는 딕셔너리 a의 Key만을 모아서 dict_keys 객체를 돌려준다.
- a.values()
- a.items()
- a.clear()
- a.get(‘name’)은 a[‘name’]을 사용했을 때와 동일한 결괏값을 돌려받는다. [‘nokey’]처럼 존재하지 않는 키(nokey)로 값을 가져오려고 할 경우 a[‘nokey’]는 Key 오류를 발생시키고 a.get(‘nokey’)는 None을 돌려준다는 차이
- 디폴트 값을 대신 가져오게 하고 싶을 때에는 get(x, ‘디폴트 값’)을 사용하면 편리하다.
- ‘name’ in a
- a.pop(“B”)
5. 집합 자료형
01. 집합 자료형은 어떻게 만들까?
- set 키워드를 사용해 만들 수 있다.
>>> s2 = set("Hello") >>> s2 {'e', 'H', 'l', 'o'}
02. 집합 자료형의 특징/span>
- 중복을 허용하지 않는다.
- 순서가 없다(Unordered).
- 인덱싱으로 값을 얻을 수 없다.
- set 자료형에 저장된 값을 인덱싱으로 접근하려면 다음과 같이 리스트나 튜플로 변환한후 해야 한다.
- 자료형의 중복을 제거하기 위한 필터 역할로 종종 사용하기도 한다
03. 교집합, 합집합, 차집합 구하기/span>
- set 자료형을 정말 유용하게 사용하는 경우는 교집합, 합집합, 차집합을 구할 때
- “&” 기호를 이용하면 교집합을 간단히 구할 수 있다.
>>> s1 & s2 {4, 5, 6}
- ”|” 기호를 사용한
>>> s1 | s2 {1, 2, 3, 4, 5, 6, 7, 8, 9}
- ’-‘차집합
>>> s1 - s2 {1, 2, 3} >>> s2 - s1 {8, 9, 7}
04. 집합 자료형 관련 함수들/span>
- s1.add(4)
- s1.update([4, 5, 6])
- s1.remove(2)
6. 불 자료형
01. 불 자료형이란?
- 참(True)과 거짓(False)을 나타내는 자료형
02. 자료형의 참과 거짓
- 자료형에 참과 거짓이 있다.
- |값| 참 or 거짓|
|—|—|
|”python”| 참|
|”” |거짓|
|[1, 2, 3] |참
|[] |거짓|
|() |거짓|
|{} |거짓|
|1 |참|
|0 |거짓|
|None |거짓|
03. 불 연산
- 자료형의 참과 거짓을 식별
>>> bool([1,2,3]) True >>> bool([]) False >>> bool(0) False >>> bool(3) True
7. 변수
01. 변수는 어떻게 만들까?
>>> a = 1 >>> b = "python" >>> c = [1,2,3]
- C나 JAVA와 달리, 파이썬은 변수에 저장된 값을 스스로 판단하여 자료형을 지정
01. 변수란?
- 만약 위 코드처럼 a = [1, 2, 3]이라고 하면 [1, 2, 3] 값을 가지는 리스트 자료형(객체)이 자동으로 메모리에 생성되고 변수 a는 [1, 2, 3] 리스트가 저장된 메모리의 주소를 가리키게 된다.
>>> a = [1, 2, 3] >>> id(a) 4303029896
02. 리스트를 복사하고자 할 때
>>> a = [1,2,3] >>> b = a >>> id(a) 4303029896 >>> id(b) 4303029896
- b는 a와 완전히 동일
- a와 b는 동일한 리스트 객체를 가리킴.
- a와는 다른 주소를 가리키도록 만들수는 없을까?
-
b = a[:]
- b = copy(a)
03. 변수를 만드는 여러 가지 방법
8. 연습문제
Summary
개인 공부 기록용 블로그 입니다.