728x90
python 기초 |
나동빈님의 이것이 코딩테스트다 강의자료를 보며 공부하고 기록하고 싶은 것들을 남기기 위한 포스트입니다.
이 포스트에 게시된 자료의 출처는 유튜브: 나동빈님에게 있음을 미리 알립니다.
list 자료형 메소드관련 |
함수명 | 사용법 | 설명 | 복잡도 | |||||
append() | 변수명.append() | 리스트에 원소를 하나 삽입할 때 사용한다. | O(1) | |||||
sort() | 변수명.sort() | 기본 정렬 기능으로 오름차순으로 정렬한다. | O(Nlogn) | |||||
변수명.sort(reverse=true) | 내림차순으로 정렬한다. | O(n) | ||||||
reverse() | 변수명.reverse() | 리스트의 원소의 순서를 모두 뒤집어 놓는다. | O(n) | |||||
insert() | insert(삽입할 위치 인덱스,삽입할 값) | 특정한 인덱스 위치에 원소를 삽입할 때 사용한다. | O(n) | |||||
count() | 변수명.count(특정 값) | 리스트에서 특정한 값을 가지는 데이터의 개수를 셀 때 사용한다. | O(n) | |||||
remove() | 변수명.remove(특정 값) | 특정한 값을 갖는 원소를 제거하는데, 값을 가진 원소가 여러개라면 하나만 제거한다. | O(n) |
list comprehesion # 0부터 19까지의 수 중에서 홀수만 포함하는 리스트 array = [ i for i range(20) if i % 2 == 1 ] print(array) 출력결과 [1, 3, 5, 7, 9, 11, 13, 15, 17, 19] #2차원 리스트 초기화에 사용하기 #n x m 크기의 2차원 리스트를 한번에 초기화. array = [[0] * m for _ in range(n)] # append method ex a=[1, 4, 3] a.append(2) print(a) 출력결과 [1, 4, 3, 2] # sort method ex a.sort() print(a) 출력결과 [1,2,3,4] # reverse sort ex a.sort(reverse = True) print(a) 출력결과 [4, 3, 2, 1] a= [1, 3, 5, 7] # reverse method ex a.reverse() print(a) 출력결과 [7, 3, 5, 1] # insert method ex, 특정 인덱스에 데이터를 추가 a.insert(2,3) 출력결과 [7, 3, 3, 5, 1] # 특정 값인 데이터의 개수를 세아리기 print(a.count(3)) 출력결과 2 # 특정 값 데이터를 삭제 a.remove(3) print(a) 출력결과 [7, 3, 5, 1] # 특정 값을 가지는 원소를 모두 제거하기 a= [1, 2, 3, 4, 5, 5, 5, 5] remove_set = { 3, 5 } result = [ i for i in a if i not in remove_set] print(result) 출력결과 [1, 2, 4] |
문자열 기초 |
문자열은 immutable 하다 즉 , 특정 인덱스의 값을 변경할 수는 없다. (C언어처럼 배열로 문자열이 저장되는 구조와 차이가 있다)
다음과 같이 heelo 를 의도해서 문자열을 수정하려하였으나, 오류메시지가 나온다. 다시 말해서 파이썬의 문자열은 변경불가능한 객체이다
a = "Hello" b = "World" print(a+" "+b) a= "string" print(a*3) a = "ABCDEF" print(a[2 : 4]) # (끝인덱스 -1) 까지 , 즉 인덱스 2~3까지 result: Hello World stringstringstring CD |
튜플 자료형 기초 |
튜플 자료형은 리스트와 유사하지만 문법적 차이가 있다.
1. 튜플은 한번 선언된 값을 변경할 수 없다. 2. 리스트는 대괄호를 이용하지만, 튜플은 소괄호를 이용한다. 3. 튜플은 리스트에 비해 상대적으로 공간 효율적이다. |
튜플을 사용하면 좋은 경우
1. 서로 다른 성질의 데이터를 묶어서 관리해야 할 때 2. 데이터의 나열을 해싱의 키 값으로 사용해야 할 때 3. 리스트보다 메모리를 효율적으로 사용해야 할 때 |
사용예시
a = (1, 2, 3, 4) print(a) a[2] = 7 ==> 튜플 객체는 변경할 수 없으므로, 오류발생 |
사전 자료형 기초 |
사전 자료형은 키(Key)와 값(Value)의 쌍을 데이터로 가지는 자료형이다. 앞서 다루었던 리스트나 튜플이 값을 순차적으로 저장하는 것과는 대비된다.
파이썬의 사전 자료형은 hash table을 이용하므로 데이터의 조회 및 수정에 있어서 O(1) , 즉 상수시간에 처리가능하다
그림과 같은 키,값이 매핑되는 자료형을 구현하고자 할때 사전 자료형을 사용할 수 있다.
data = dict() data['사과'] = 'Apple' data['바나나'] = 'Banana' print(data) result: {'사과': 'Apple', '바나나': 'Banana', '코코넛': 'Coconut'} |
사전 자료형에서는 키와 값을 별도로 뽑아내기 위한 메소드를 지원한다
key data만 뽑아서 리스트로 이용할 때는 keys() 함수를 이용 값 data만 뽑아서 리스트로 이용할 때는 vales() 함수를 이용 |
이렇게도 출력가능
728x90
댓글