1. 시퀀스(Sequences)
파이썬의 Sequences 자료형
- 문자열, 수치 등을 관리하는 기본 자료형
- String, Tuples, Lists 등의 종류가 있음
특징
- 문자열, 수치 등을 나열해서 관리하는 배열 형식을 가짐
- 인덱싱(indexing)을 이용하여 저장된 자료의 위치를 참조해서 활용
- 특정 구간의 자료를 리턴할 수 있는 슬라이싱 기능을 가짐
- 자료를 연결하거나 반복할 수 있는 +, * 연산자를 이용함
- 인(in) 키워드를 이용하여 어떤 값이 시퀀스 자료에 속해 있는지 확인함
문자열 인덱싱
- 문자열은 각 한 문자씩을 인덱스를 가지고 0부터 나열형으로 관리
- 역순으로는 -(음수) 값을 가진 인덱스로 매핑됨
- 호출은 문자 변수[인덱스]로 호출하면 값을 리턴함
문자열 슬라이싱
- [인덱스 시작:인덱스 끝:스텝]을 명시하게 되면 범위에 맞는 값을 값을 잘라서 리턴
- 단계를 지정하는 스텝 기능까지 보유
STEP
- 원하는 스텝은 숫자를 지정해서 스코프 연산자 뒤에 지정하여 []로 감싸서 사용
문자열의 반복과 합치기
- 문자열은 +,*를 이용하여 문자열 합치기, 반복되는 횟수를 각각 지정함
문자열의 함수
- String의 함수들은 모두 문자열 혹은 문자열 변수에 바로 이어서 점(.)을 찍은 다음 호출하여 사용
문자열 함수 종류
- format() : 변수의 내용을 표시하기 위한 포맷팅을 수행한다.
- lower(), casefold() : 대문자를 소문자로 바꾼다.
- upper() : 소문자를 대문자로 바꾼다.
- swapcase() : 대문자는 소문자로, 소문자는 대문자로 바꾼다.
- title() : 모든 단어의 첫 문자만 대문자로 나머지는 소문자로 바꾼다.
- capitalize() : 문자열의 첫 글자만 대문자로 나머지는 소문자로 바꾼다.
- islower() : 모든 문자가 소문자이면 True 반환
- isupper() : 모든 문자가 대문자이면 True 반환
- count(str) : str이 포함된 개수를 센다.
- find(str) : str의 첫 위치를 알아낸다. (없다면 -1 반환)
- index(str) : str의 첫 위치를 알아낸다. (없다면 예외 발생)
- replace(str1, str2) : 원 물자열 안의 str1을 str2로 바꾼다.
- split() : 공백문자 기준으로 나누어서 리스트에 저장한다.
- split(sep) : sep(문자열)을 기준으로 나누어서 리스트에 저장한다.
2. Tuples
Tuples란?
- 숫자와 문자를 함께 관리하는 자료형
- 값의 시퀀스이며 지정된 값을 변경할 수 없음
인덱스
- ()안에 혼합형 자료형을 콤마(,)로 구분해서 값을 대입하여 사용
- 0부터 인덱스로 관리됨
- 호출할 때는 [인덱스]로 사용
- 콘론(:)을 이용해서 인덱스의 범위를 지정하여 사용
슬라이싱
- 슬라이스 연산자는 요소들의 일부를 석택하여 리턴
- 형식은 String과 동일하게 사용
병합과 반복
- +,*를 이용하여 문자열 합치기, 반복되는 횟수를 각각 지정 가능
- (1,2,3)+(4,5,6)를 지정하게 되면 (1,2,3,4,5,6)이 되어 리턴
- (1,2,3)*3을 지정하면 (1,2,3)이 3번 반복되어 리턴
Tupel의 함수
- my.index(x) : 목록 my에서 x를 찾아서 그 위치를 리턴
- my.count(x) : 목록 my에서 x가 몇 개 있는지를 리턴
3. 리스트(list)
리스트란?
- 파이썬 시퀀스 구현 중 많이 사용되는 자료형
- 인덱스, 슬라이싱, 매트릭스, 병합 및 반복연산자, 함수를 이용
- 대관로([])로 나열된 여러 개의 데이터를 감싸서 저장 및 관리
- Tuple은 고정된 리스트, 자료 수정이 불가 하지만 list는 자료의 수정이 자유로움
리스트의 인덱싱
- 대괄호[] 안에 혼합형 자료형의 콤아(,)로 구분해서 값을 대입하여 사용
- 0부터 인덱스로 관리
- 호출할 때는 [인덱스]로 사용
- 콜론을 이용하여 인덱스의 범위를 지정해서 사용
리스트 슬라이싱
- 대괄호[] 안에 [인덱스시작:익덱스끝:스텝] 순서로 저장
리스트 연산자
- + : List와 List를 더해서 하나의 리스트로 만들 때 사용
- * : 원소를 반복할 때 사용
리스트 함수 종류
- cmp(list1, list2) : list를 비교해서 리턴
- len(list) : 리스트의 크기(원소의 개수)를 리턴
- max(list) : 리스트에서 가장 큰 값을 리턴
- list.append(obj): list에 obj을 추가
- list.count(obj) : list에 obj의 개수를 리턴
- list.extend(seq) : list에seq를 추가
- list.index(obj) : obj의 색인 값을 리턴
- list.insert(index,obj) : index색인 위치에 obj를 삽입
- list.pop(obj=list-1) : list의 마지막에 있는 원소를 리턴
- list.remove(obj) : list에서 obj를 제거
- list.reverse() : list를 역순으로 재배치
- list.sort(f) : list를 정렬
3. Dictionary & List
딕셔너리(Dictionary)
- 자료를 대입할 때 {} 안에 콤마로 값을 입력
- key:value의 형태로 선언하는 구조를 가져 비정형 데이터를 매핑할 때 유용하게 사용
- 정렬되지 않은 키 값의 쌍
- 딕셔너리에 새로운 key 값을 입력할 때 반드시 key 값에 해당하는 value도 함께 입력
- value의 값은 변경이 가능하지만 key 값은 변경할 수 없음
- key를 호출하면 value를 리턴하는 구조를 가짐
딕셔너리의 선언과 출력
- 딕셔너리는 반드시 문자열만 사용하지 않아도 됨
- 정수 타입, boolean 타입, 임의의 객체 타입, 딕셔너리 형식도 사용 가능
- 다양한 타입을 동시에 섰어서 사용하는 것이 가능
딕셔너리의 수정
- 딕셔너리의 key는 그 안에 유일한 값
- 이미 존재하는 key에 value를 할당하면 새로운 key-value 쌍을 언제든지 추가 가능
딕셔너리의 주요 함수
- keys() : key들을 모아놓은 리스트를 리턴
- values() : value들을 모아놓은 리스트를 리턴
- items() : 쌍의 터플를 모아놓은 리스트를 리턴
- clear() : 모든 내용을 삭제
- get(key) : 지정된 key의 value를 반환
- has_key(key) : 해당하는 key가 있는지 조사하여 참, 거짓으로 반환
Set
set이란?
- 파이썬에서 {}안에 저장된 자료를 집합연산을 통해 자료를 추출하고 싶을때 사용하는 자료형
- 중복되지 않는 요소들의 모임을 가진 집합으로 임의의 순서를 가짐
- 공집합은 {}가 아닌 set() g함수로 생성({}는 딕셔너리)
- 선언은 set()의 ()안에 자료를 넣거나 tupel은 ()안에 list[]로 데이터를 입력
- 집합 연산인 차집합, 교집합, 합집합, 대칭차집합(symmetric difference) 연산을 지원
Set의 함수
- s.union(t) : s와 t의 합집함(s|t)
- s.intersection(t) : s와 t의 교집합(s&t)
- s.difference(t) : s와 t의 차집합(s-t)
- s.symmetric_difference(t) : s와 t의 배타집합(s^t)
- s.copy() : s를 얕은 복사
- s.update(t) : s와 t의 합집합을 s에 저장(s|=t)
- s.intersection_update(t) : s.intersection_update(t)
- s.difference_update(t) : s와 t의 차집합을 s에 저장(s-=t)
- s.symmetric_difference_update(t) : s와 t의 배차집찹을 s에 저장(s^=t)
- s.add(x) : 원소 x를 s에 추가
- s.remove(x) : 원소 x를 s에서 제거, 없으면 KeyError 예외 발생
- s.discard(x) : 원소 x가 있다면 s에서 제거
- s.pop() : s에서 임의의 원소를 하나 리턴하고 집합에서는 제거, 빈 집합이면 Key Error 예외 발생
- s.clear() : 집합 s의 모든 원속 삭제
'Programming > Python' 카테고리의 다른 글
[Python] 기본자료형과 연산자 (0) | 2022.01.15 |
---|---|
[Python] 파이썬(Python) 개요 & 설치 (1) | 2022.01.13 |