파이썬 기초(3)

장현수·2023년 5월 15일
0

알고리즘

목록 보기
4/9

슬라이싱 = 얕은복사
객체 복사 시 주의

해시 자료구조
문제 해결 시 딕셔너리의 역할 : 두 가지 자료구조를 일대일 관계로 묶어줌

딕셔너리와 set 차이 : in 연산 시 시간복잡도, 공간복잡도의 차이
-> 빠르게 찾을 수 있게끔 해시함수로 정리해둔 것 ..

딕셔너리
key값은 반드시 고유한 값이어야 함
-> immutable한 자료형은 가능, 리스트같은 변경 가능한 자료형은 불가능

딕셔너리 조회 : 키값이 없으면 에러남

.get()메소드

  • 키값이 없으면 반환할 값을 지정
    -> 뭐라도 반환, 에러는 적어도 나지 않는다
    -> if문의 조건문으로 활용 가능. 기본 딕셔너리는 에러가 나기 때문에 if문에 작성 불가

.update() 메소드

  • 동일한 값이 있으면 덮어씌워짐

딕셔너리 :

  • 해쉬. 탐색 빠름
  • 키값 고유해야 함
  • for문 돌면서 pop할 수 없다.
  • update는 합칠 때 고유해야 함(겹치면 덮어씌워짐)

문자열

immutable
리스트처럼 인덱싱, 음수 인덱싱 가능
리스트와 달리 원소 삽입/삭제/수정 불가능

스트링 메서드 *

.split() 문자열 쪼개기

입력받은 것 숫자로 바꾸기

  • map(함수, input().split)
    int()가 아니라 int함수 자체를 뿌림

SET

unhashable type은 추가할 수 없음

a = [1,2,5,4,3,6,3,2,2,5,3,5,1,1,1,7,8,5]
b = set(a)
b
{1, 2, 3, 4, 5, 6, 7, 8}
c = list(b)
c
[1, 2, 3, 4, 5, 6, 7, 8]
list(set(a))
[1, 2, 3, 4, 5, 6, 7, 8]

set()은 중복제거
중복제거 하고 list로 형변환 가능

기타 내장함수들

내장함수 - .쓰지 않고 바로 사용 (메소드X)
range() -> 순회할 때 사용
step을 음수로 줘서 역방향으로도 가능

함수

선언부, 호출부
함수를 선언했으면 반드시 호출해야 한다.
-> 선언 하자마자 호출부터 적어두기

매개변수와 인자의 개수를 정확히 맞춰줘야 한다.

  • 반환 값이 있다 = 변수에 할당할 수 있다.
  • 문자열 포매팅
name = input()
greeting = f'{name}님 환영합니다'
greeting2 = '{}님 환영합니다'.format(name)
print(greeting)
print(greeting2)

-> 출력 형식 지정 가능

매개변수와 반환값 유무 분류 --

profile
개같이 발전하자 개발

0개의 댓글