파이썬 Python
💡 다중 프로그래밍 패러다임
- 하나 이상의 프로그래밍 패러다임을 지원하는 프로그래밍 언어
- 명령형 프로그래밍, 절차적 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍 지원
ABC의 후속 프로그래밍 언어로 시작DARRA에 Computer Programming for Everybody 제안Pythonic
파이썬 관련 개선을 위한 제안(PEP)
→ 많은 개발자의 의견을 수용하고 토론하며 발전한 언어
→ 새로운 파이썬의 기능, 파이썬 프로세스, 환경에 대해 커뮤니티에서 정보 제공
→ 커뮤니티의 의견을 수집, 합의 도출, 반대의견 청취
💡
PEP란?
PEP(Python Enhance Proposal)은 파이썬 코드 작성법에 대한 가이드라인이다.
PEP 8이 대표적인 스타일 가이드이다.
실행할 수 있는 의사 코드(Executable pseudocode) 수준의 문법
if 3 in [1,3,5,7]: print("3이 들어있습니다")
↓
리스트 [1,2,3,4]에 3이 포함되어 있으면 "3이 들어있습니다"를 출력하시오.



C나 Java 등으로 작성된 프로그램보다 속도↓Rust 또는 Go 고려해야 함플랫폼에 독립적
→ 다양한 운영체제(플랫폼)에서 별도의 컴파일 없이 실행 가능
→ 다양한 인터프리터 환경 사용 가능
인터프리터식 객체지향적
→ 프로그램을 객체로 모델링
동적 타이핑(dynamically typed) 대화형 언어
→ 변수의 자료형을 지정하지 않음
→ 작성한 코드에 대한 수행 결과를 바로 확인하고 디버깅하며 코드 작성 가능
💡 동적 타이핑이란?
- 코드를 작성하는 데 있어서 컴퓨터적 구조를 생략하는 것
- ex) 변수의 데이터 타입을 명시하지 않아도 컴퓨터가 알아서 해석한다.
- 때문에 코드가 간결하지만, 컴퓨터가 직접 해석해야 하므로 실행속도↓
CPythonC 언어로 개발된 파이썬 인터프리터 (소스 대 소스 컴파일러)C 구현 라이브러리와의 연동을 통한 확장에 최적💡 컴파일러의 유형
① 셀프 호스팅 컴파일러: 부트스트래핑 단계를 통해 자신의 언어로 작성한 컴파일러
② 소스 대 소스 컴파일러: 타 언어로 작성한 컴파일러
CPython이 컴파일 후 바이트코드 .pyc 파일 생성
IDLE기본으로 포함된 파이썬의 통합 개발 환경
→ 파이썬과 Tkinter GUI 툴킷으로 개발
→ 구문 강조, 자동 완성, 스마트 들여쓰기 등이 포함된 단순한 IDE 지향
→ stepping, breakpoint, call stack을 확인 가능한 통합 디버거 환경 제공
파이썬 공식 홈페이지에서 다운로드 가능: http://www.python.org
오픈소스 기반의 웹 플랫폼
→ 파이썬을 비롯한 40여개의 프로그래밍 언어 지원
→ 전통적인 소스코드-컴파일-실행 방식❌ 웹 기반 대화형 개발 및 실행 환경⭕
→ 문서화하여 다른 사람과 공유하기가 편리
→ 마크다운 방식으로 코드 관련 타이틀, 설명 등 작성 가능
Colab