촬리의늘솔길

python 코테준비 - 문법 공부 본문

✍️2023/Algorithm

python 코테준비 - 문법 공부

리촬리 2023. 4. 13. 15:51

python 수업을 2번이나 들었는데......또 다시....(나는 바보입니다)

자료형

정수, 실수, 복소수, 문자열, 리스트, 튜플

 

정수형

- 양의 정수, 음의 정수, 0

 

실수형

- 소수점 아래의 데이터를 표현하는 수 자료형

- .n 으로도 표현 가능

- 실수 값 반올림 round(), round(소수,n째자리)

 

 

지수 표현 방식

- e나 E를 이용한 지수 표현 방식을 이용할 수 있다.

- e나 E다음에 오는 10의 지수부를 의미한다.

- 1e9라고 입력하게 되면 10의 9제곱

- 최단경로 알고리즘에서는 도달할 수 없는 노드에 대하여 최단 거리를 무한(INF)으로 설정하곤 한다.

- 이때 가능한 최댓값이 10억 미만이라면 무한의 값으로 1e9(10억)을 사용가능

 

기본 실수형으로 처리되기때문에 정수형 데이터로 지정되어있다면

int(1e9)이런식으로 지정

 

 

수 자료형의 연산

- 나누기 연산자(/)

- 나머지 연산자(%)

- 거듭제곱 연산자(**)

 

리스트 자료형

- 여러개의 데이터를 연속적으로 담아 처리하기 위해 사용하는 자료형

- c나 자바에서의 배열기능, 연결리스트와 유사한 기능 지원함

- 배열 혹은 테이블이라고도 부른다.

 

리스트 초기화

- 리스트는 대괄호[] 안에 원소를 넣어 초기화 하며 쉼표로 원소 구분

- 비어있는 리스트 선언 list(), [] 이용

- 리스트 원소 접근은 인덱스로  -> 인덱싱

- 인덱스는 양의 정수, 음의정수 모두 사용가능

- 음의 정수넣으면 거꾸로 탐색함 

 

슬라이싱

- 연속적 위치를 갖는 원소 가져오기

- 끝 인덱스는 실제 인덱스보다 1을 더 크게 설정

 

리스트 컴프리헨션

- 대괄호 안에 조건문과 반복문을 적용하여 리스트 초기화함

- 2차원 리스트 초기화할때 효과적으로 사용될 수 있다 (오오!)

 

언더바는 언제 사용?

- 반복 수행하되, 반복을 위한 변수의 값을 무시하고자 할때 언더바를 자주 사용한다.

 

리스트 관련 기타 메서드

'

문자열 자료형

문자열 변수 초기화 "",''

- 전체문자열 큰따옴표 => 내부적으로 작은따옴표

- 작따 -> 큰따

= 백슬래시 -> 큰,작따 원하는 만큼 포함가능

 

문자열 연산

- 문자열변수에 덧셈을이용

- 인덱싱, 슬라이싱 가능

- 인덱싱으로 문자열 변경 불가

 

튜플 자료형

- 리스트와 유사함

- 한번 선언된 값 변경 불가 (문자열과 같음)

- 튜플은 소괄호를 이용함

- 공간효율적이다.

- 데이터 접근은 [] 인덱싱가능

- 특정 인덱스 값 바꿀수없음

- 서로다른 성질의 데이터를 묶어서 관리해야할 때

-> 최단경로 알고리즘에서는 비용, 노드번호의 형태로 튜플 자료형 자주 사용함

- 해싱의 키 값으로 데이터의 나열을 사용해야할때

- 리스트와 다르게 키 값으로 사용가능 (변경불가 특성)

- 리스트보다 메모리를 효율적으로 사용해야할 때

 

사전 자료형

- 키와 값의쌍을 데이터로 가지는 자료형

- 변경 불가능한 자료형을 키로 사용할 수 있다.

- 해시테이블을 가지기 때문에 O(1) 에 데이터의 조회, 수정 가능하다.

- dict() 함수를 이용해 초기화 가능

 

사전 자료형 관련 메서드

키 데이터만 뽑아서 리스트로 이용: keys()

- 값 데이터만 뽑아서 리스트로 이용 : values()

 

집합 자료형

- 집합은 다음과 같은 특징이 있다.

- 중복을 허용하지 않는다.

- 순서가 없다.

- 리스트 , 문자열을 이용해서 초기화 가능하다.

- set()함수를 이용한다.

- 중괄호({}) 안에 각 원소를 콤마를 기준으로 구분하여 삽임함으로써 초기화할 수 있다.

- 데이터의 조회 및 수정에 있어서 O(1) 의 시간에 처리할 수 있다.

 

집합 자료형의 연산

- 합집합 : 집합 A 에 속하거나 B에 속하는 원소로 이루어진 집합 (AUB)

- 교집합 : 집합 A 에도 속하고, B에도 속하는

- 차집합 : 집합 A 중 B에속하지않는 ..(A-B)

.add() : 새로운 원소추가

.update() : 새로운 원소 여러개 추가

.remove() : 특정값 원소 삭제 

 

사전 자료형과 집합 자료형의특징

- 리스트나 튜플은 순서가 있기 때문에 인덱싱을 통해 자료형의값을 얻을 수 있따.

- 사전 자료형과 집합은 순서가 없기 때문에 인덱싱 값 얻기 불가

- 사전의 key 혹은 집합의 원소를 이용해 O(1) 의 시간복잡도로 조회함.

 

 

(다음 게시물은 7강부터!)

728x90

'✍️2023 > Algorithm' 카테고리의 다른 글

구현  (1) 2023.04.21
[BOJ/1439] 그리디 문제  (1) 2023.04.20
[이코테] 그리디  (2) 2023.04.18
python 코테준비- 문법공부 (2)  (0) 2023.04.18
python 코테 준비 - 개괄  (1) 2023.04.13