bootcamp

241229 SWEA 파이썬 프로그래밍 기초 (1)

밤하늘바라기s 2024. 12. 29. 15:47

이전 차시인 CT강의에 대해서는, 문제가 점점 코딩에 맞춰지고, 알고리즘을 짜는 문제들이 나오기 시작했기에 애초에 프로그래밍을 모르면 풀기 어려울 것 같았다. 그러므로, 문제들의 대략적인 흐름만 확인한 후, 파이썬 프로그래밍을 먼저 수강하는 것이 도움이 될 것이라 생각했다.

여기선 파이썬 프로그래밍에 대한 정리를 하려고 한다.

 

1. 파이썬(Python)이란?

■ 특징

  • 학습속도가 빠름
  • 수행 결과를 빠르게 확인 가능
  • 확장 기능 지원
  • 다양한 플랫폼에서 사용 가능
  • C, C++등에 비해 처리속도가 느리지만 하드웨어 등 성능 향상 및 특정 부분에서 C 등을 활용함으로써 격차를 줄임
  • 독립적이며 인터프리터 방식객체지향이며 동적대화형 성격을 가진 언어.
  • 가독성을 중시함.
  • 메모리 관리를 Garbage Collector를 이용.
  • 라이브러리가 풍부함
    • XML처리, 통신 프로토콜, CSV파일 처리, DB 접속, GUI , 구문 분석 도구 등등...
  • 문자열은 유니코드를 이용.
  • 오픈소스임

■ Python의 종류

  • CPython : C로 구현된 파이썬 (표준적으로 사용됨)
  • IronPython : C#으로 구현된 파이썬
  • Jython : Java로 구현된 파이썬
  • PyPy : 파이썬으로 구현된 파이썬

■ 유니코드란?

  • 문자열을 표현하는 대표 코드 중 하나로, 다른 건 아스키(ASCII) 코드가 있음.
    • 유니코드는 16비트로 표현.
    • 아스키 코드는 7비트로 표현.
  • 각 나라별 언어를 모두 표현하기 위해 만든 통합 코드체계로, 65,536자 표현 가능.
  • 예를 들어, 한글 "가"는 유니코드로 AC00로 표현.

■ 대표적 프레임워크

  • django : 회원가입, 사용자 인증 등 공통 기능 제공
  • Flask : 간단한 웹 서비스, 모바일 서버 구축에 적합
  • Beautiful Soup : 웹 크롤링 라이브러리. 문서 수집, HTML 구문 분석, DOM 트리 탐색, 문서 분석 등.
  • Scrapy : 웹 크롤링 프레임워크. 웹 문서에서 데이터 추출 규칙을 작성해서 필요 데이터 자동 추출 가능.
  • NumPy : 다차원 배열 객체 지원. 선형대수, 푸리에 변환, 난수 생성 기능 제공.
  • pandas : 데이터 분석 표준 라이브러리.
  • SciPy : 수학, 과학, 엔지니어링 분야 사용.NumPy, pandas, Matplotlib, IPython, Sympy 등 포함.
  • scikit-learn : 분류, 회귀, 군집, 자원축소와 같은 머신러닝 지원.
  • TensorFlow : 구글이 공개한 머신러닝, 딥러닝 프레임워크. GPU 연산 지원.
  • PYTORCH : 머신러닝, 딥러닝 프레임워크. GPU 연산 지원. 모델 훈련이, 빠르고 실시간 결과값 시각화 가능.

■ 파이썬 설치 및 실행

  • 파이썬 홈페이지를 통해, Python 3.x 의 최신버전 설치.
  • Python 3.13 (64-bit) 는 REPL(Read-Eval-Print-Loop) 방식의 파이썬 쉘.
  • IDE, IDLE(Integrated DeveLopment Environment)는 통합 개발 환경이라는 의미.

파이썬 설치 시 시작 프로그램 내 내용

  • IDLE는 코드 힌트와 자동 완성 기능이 제공됨.
  • [Tap] 혹은 [Ctrl + Space]를 누르면 코드 힌트 목록이 표시됨.
  • [File] -> [New File] 혹은 [Ctrl + n]으로 코드 편집 가능. 코드 입력 후 [File] -> [Save] 혹은 [Ctrl + s]를 통해 저장 가능.
  • [Run] -> [Run Module] 혹은 [F5]로 코드 실행 가능. 실행된 코드 결과는 IDLE에 출력.
  • 설치 시에 [Add Python to PATH]를 체크하였기에, 명령 프롬프트에서도 파이썬을 사용 가능.

■ 파이참 개발 환경

  • PyCharm (파이참)
    • 커뮤니티 버전을 이용시, 무료로 이용 가능.

  • 파이참 프로젝트 파일
    • 파이썬 코드 파일, 각종 리소스 파일들로 구성.
    • 파이참 실행 후, 새 프로젝트 버튼을 통해 프로젝트 생성 가능.
    • 코드 작성 후 [실행] → [실행] 혹은 [Shift + F10] 이나 [Alt + Shift + F10] 으로 코드 실행 가능.
    • 코드 작성 후에는 디버깅 과정을 거쳐야 함.
      • 중단점(브레이크 포인트) 지정 → 프로그램 실행 정지 → 메모리에 저장된 값 확인 → 실행 재개
    • 중단점 설정은 행 번호를 클릭하면 가능. 행이 빨간 점으로 표시.
    • 디버깅은 [실행] → [디버그] 혹은 [Shift + F9] 나 [Alt + Shift + F9]로 가능.
    • 이후 [실행] → [디버그 액션] → [스탭 오버] 혹은 [F8]을 통해 코드를 한 행씩 진행 가능.
    • 디버그를 중단할 때는 [실행] → [디버그 액션] → [프로그램 재개] 혹은 [F9] 를 통해 가능.
    • 소스 코드가 어떤 방식으로 인코딩되어 있는지도 중요. 파이썬 3.x에서는 utf-8이 기본. 소스코드 중에선 euc-kr 등으로 인코딩되어 있을수도 있으니, 그런 경우 오류가 발생할 수 있음.
      • # coding: utf-8 등을 코드 최상단에 입력함으로써 소스코드 인코딩 가능.
    • 파이썬은 문장 끝 세미콜론을 생략할 수 있으나, 한 행에 여러 문장 기술시에는 필요.
    • 하나의 .py 파일을 모듈이라고 하며, 라이브러리 성격의 기능을 하는 것과 프로그램의 진입점 역할을 하는 것이 있음.
    • 한 파일이 양쪽 역할을 할 경우, if문을 통한 분기 필요.
    • 아래와 같은 경우, 해당 코드가 메인으로 실행된 경우에만 실행됨.
if __name__ = "__main__":
	print("Hello World")

 

2. 중간 정리

계속 이리갔다 저리갔다 하는 것 같지만, SWEA에서 2개 강의를 듣고 입과 안내문을 다시 보니, 필수 학습 항목이 다른 쪽에 있었기에 그쪽으로 선회하고자 한다. 일단 여기서 배운 내용들도 잘 익혀둬야겠다!

'bootcamp' 카테고리의 다른 글

241230 점프 투 파이썬 (2)  (1) 2024.12.30
241229 점프 투 파이썬 (1)  (0) 2024.12.30
241226 SWEA 집합과 조합론  (1) 2024.12.27
241225 SWEA 논리와 증명 (2)  (2) 2024.12.25
241223 SWEA 논리와 증명  (2) 2024.12.24