728x90
함수란?
- 함수는 코드의 반복을 줄이거나 어떠한 기능을 하기 위해 특정 코드를 모아둔 것이다.
예시로는 (f(x) = 2x)가 있다.
메소드란?
객체(값)의 소속되어 있는 함수이다.
s = "ABCD"
len(s) # 함수
s.lower() # 메소드
컬렉션 자료형 (Collection data type)이란?
- 여러가지 요소를 하나로 묶어서 담을 수 있는 데이터 타입이다.
- 문법적인 요소들 빼고 다 담을 수 있다.
- 객체, 변수, 함수, 클래스 ... 등 담을 수 있다.
- list, set, dict, tuple
자료형의 특징
- Sequence 자료형
- 열거 되어있고, 연속되어 있다.
- 순서와 순번(index)이 있다.
- mutable 자료형
- 수정 가능한 객체(값)
- 컬렉션 자료형: list, set, dict
-immutable 자료형
- int, float, str, bool, tuple (컬렉션 타입)
list 형태
- Sequence 자료형
- mutable 자료형
- 변경 가능 (추가,삭제, 수정 등)
- 중복 데이터 저장 가능
- []를 이용해서 만듦
list의 메소드 종류
- append()
- 리스트 제일 뒤에 값을 추가
lst = [1,2,3,4]
lst.append(0)
=> [1,2,3,4,0]
- pop()
- 제일 뒤에 있는 데이터를 꺼내고 삭제
- 인덱스 값을 줄 경우 해당 인덱스 값을 꺼내고 삭제
print(lst.pop())
print(lst)
print(lst.pop())
print(lst)
=> 4
[0,1,2,3]
3
[0,1,2]
lst.pop(1)
lst
=> [0,2]
- extend()
- 리스트와 리스트를 합친다.
lst = [1,2,3]
lst.extend([4,5,6])
lst
=> [1,2,3,4,5,6]
lst = [1,2,3]
lst.append([4,5,6])
lst
=> [1,2,3,[4,5,6]]
extend는 숫자들의 리스트를 합치기 때문에 append와 결과가 다르게 나온다.
append는 값을 뒤에 추가하는 개념이라 extend와 약간의 차이가 있다.
- insert()
- 인덱스 위치에 값을 추가한다.
lst = [1,2,3]
lst.insert(0,9)
lst
=> [9,1,2,3]
- remove()
- 리스트에서 값을 찾아 삭제한다.
lst = [10,20,30]
lst.remove(20)
lst
=> [10,30]
- del()
- del 이라는 키워드를 사용하면 된다.
- 리스트에 경우 특정 인덱스 값을 삭제
- 메모리관리할 때 편함
lst = [10,20,30]
del lst[1]
lst
=> [10,30]
a = 1004 # 변수도 삭제 가능
del a
a
=> NameError: name 'a' is not defined
시퀀스의 특징
- Sequence는 순번이 있다.
- 순번을 index 라고 한다
- 파이썬의 인덱스는 2종류가 있다.
- 양수 인덱스
- 0 부터 시작한다.
- 왼쪽에서 오른쪽으로 1씩 증가
- 음수 인덱스
- -1부터 시작한다.
- 오른쪽에서 왼쪽으로 1씩 감소
- 인덱스는 무조건 정수이다.
- ex) lst[정수:정수:정수]
슬라이싱(Slicing)
- 인덱스를 사용해서 시퀀스를 잘라낸다.
- 시퀀스에 특정 범위를 가리킨다.
- 구조는 [start:end:step]과 같다.
- start ~ end-1 부분을 step만큼 건너 뛰면서 잘라낸다.
- start, end, step 생략이 가능하다.
- start를 생략하면 자동으로 0이 들어간다.
- end를 생략하면 자동으로 시퀀스의 길이(len)가 들어간다.
728x90
'AI 공부 > 파이썬' 카테고리의 다른 글
파이썬 (제어문 = 조건문, 반복문....) - 1 (0) | 2022.07.25 |
---|---|
파이썬 (문자열) (0) | 2022.07.22 |
파이썬 (연산자를 이용한 리스트) (0) | 2022.07.22 |
[ 배열 ], ( 튜플 ), { 딕셔너리 }의 차이점과 사용법 (0) | 2022.07.22 |
파이썬 (값, 변수 그리고 키워드) (0) | 2022.07.21 |
댓글