본문 바로가기
알고리즘

[알고리즘] 파이썬 기본 문법 정리

by 개발하는 감자입니다 2024. 4. 16.
728x90

 

 

안녕하세요. 개발감자입니다!

코딩 테스트를 준비하면서 <코딩 테스트 합격자되기> 책을 보며 공부하고 있습니다.

책을 보며 공부한 내용을 간단히 정리해보았습니다. 코딩 테스트를 준비하는 다른 분들께 도움이 되었으면 합니다

 

코딩 테스트 합격자 되기: 파이썬 편 | 박경록 - 교보문고

코딩 테스트 합격자 되기: 파이썬 편 | ★ 코딩 테스트 합격자가 되는 가장 확실한 방법! ★ 프로그래머스 제공, 전문가가 모여 엄선한 빈출 100문제로 철저하게 대비하세요신입 사원 코딩 테스트

product.kyobobook.co.kr

 

0.  파이썬 기본 문법 정리

  1. 빌트인 데이터 타입
    • 정수형
      • 양과 음의 정수, 0을 포함
      • 정수형 산술 연산
      • a , b = 1, 2 print(a+b, a-b, a//b, a%b) # 더하기, 빼기, 몫, 나머지 print(a**b) # a의 b승
      • 정수형 비교 연산
      • a, b = 1, 2 print(a == b) print(a != b) print(a > b) print(a < b) print(a >= b) print(a <= b)
      • 정수형 논리 연산
      • a, b= False, True print(a and b) print(a or b) print(not a)
    • 부동소수형
      • 소수 저장 시 사용
      • 곱하기, 나눗셈, 나머지 연산 시 연산결과가 0.22222222222 이런 식으로 나옴
      • 반올림
      • a = 0.199 print(round(a,2)) # 0.2
  2. 컬렉션 데이터 타입
    • 뮤터블 객체
      • 변경 가능한 객체
      • ex. 리스트, 딕셔너리, 셋
      • 리스트
        • 순서가 있는 자료형
        • 인덱싱, 슬라이싱 가능
        my_list = [1,2,3,4]
        my_list.append(2) # 리스트 추가
        del my_list[2] # 2번 인덱스 위치의 원소 지우기
        temp = my_list[0:2] # 0,1
        temp = my_list[-4:-2] #1,2
        
      • 딕션너리
        • 키 : 값 형태로 저장하는 해시 테이블로 구현하는 자료형
        • 키를 사용하여 값 검색
        my_dic = {"apple":2, "banana":3}
        print(my_dic["apple"]) # 2
        
        my_dic["apple"] = 10 # 수정
        del my_dic["banana"] # 키가 바나나인 경우 삭제 > 없으면 예외 발생
        
        key = "apple"
        if key in my_dic: # 키가 딕셔너리에 있는지 확인
        
    • 이뮤터블 객체
      • 변경 불가능한 객체
      • ex. 정수, 부동소수점, 문자열, 튜플
      • 튜플
        • 배열과 사용방법은 비슷
        • 한 번 생성 시 삭제 불가
        my_tuple = (1,2,3)
        print(my_tuple[0]) #1
        print(my_tuple[0:2]) #1,2 - 문자열과 비슷
        
      • 문자열
        • 문자들을 집합의 형태로 구성한 이뮤터블 객체
        • 큰따옴표나 작은 따옴표로 감싸 사용 가능
        string = "hello"
        string2 = 'World'
        
        string = "He"
        string += "llo"
        print(string) # Hello
        
        string = string.replace("l", "")
        print(string) # Heo
        
  3. 함수
    • 함수 정의
      • def 라는 예약어를 사용하여 정의
      def function (param):
      	return result # 반환 값
      
    • 함수 호출
    • result = function(param) # 반환값을 저장
    • 람다식
      • 함수를 더 간단하게 표현하는 방식
      • 익명함수를 만드는 데 사용
      • 딱 한 번 실행할 목적으로 사용
      lamda x, y: x + y # x,y를 받아서 x+y를 반환하는 람다식
      
      num = [1, 2, 3, 4, 5]
      squares = list( map (lamda x : x**2, num) )
      print(squares) # 1, 4, 9, 16, 25
      
  4. 코딩 테스트 구현 노하우
    • 조기 반환 (early return)
      • 코드 실행 과정이 함수 끝까지 도달하기 전 반환하는 기법
      • 코드 가독성 ↑
      • 예외를 더 깔끔하고 빠르게 처리 가능
      • def early_return (possible): if possible : return True # <<< 조기 반환 return False
    • 보호 구문 (guard clauses)
      • 본격적인 로직을 실행하기 전 예외 처리 코드를 추가
      • 조건문 전, 초기 입력값이 유효한지 검사 후 실행
      • def guard_clauses (input_value): if input_value is None: # 값이 없으면 종료 return False # ... 이후 로직 진행
    • 합성 함수 (composite method)
      • 2개 이상의 함수를 활용하여 함수를 추가로 만드는 기법
      • 람다식 주로 활용

 

감사합니다!

728x90
반응형