당신은 멋쟁이, 우리는 장고쟁이~

0%

Python 기초 1 편 - 기본 사항들

What is Python?


Python 이 무엇인가요?


파이썬은 오픈소스로 개발된 객체 지향 프로그래밍 언어로, 고등 레벨의 강력한 프로그래밍 언어 입니다. Guido Van Rossum 에 의해서 1990년대 초반에 개발되었고, Monty Python 을 따라서 이름 지어졌습니다.


파이썬은, 많은 unix 계열에서 실행되고, Mac 과 Windows 2000 대 이후 버전에서도 실행 됩니다.


파이썬은, http://www.python.org 에서 다운로드 가능합니다.


Python 프로그램은


파이썬 프로그램들은 모듈들로 이루어져 있습니다. 하나의 모듈statement 들을 포함하고 있고, statementexpressions 을 가지고 있습니다.


Module > Statements > Expressions


파이썬에서뿐만 아니라, 자주자주 나오는 컨셉인, statementsexpressions 에 대해서 알아보자면,


Expressions

수식, 연산식


Statements

실행 가능한 (executable) 코드 조각, 무엇인가를 실행하는 코드의 조각 이라고 보면 됩니다.


스택오버플로우에서 검색해 보면, 아래 예시가 나옵니다


1
2
3
4
5
6
x + 2   # Expression 
x = 1 # Statement

y = x + 1 # Statement

print(y) # Statement

위 예시를 통해서 유추해 보면, expression 은 단순히 어떠한 값을 계산하는 수식이고. 어떠한 동작도 하지 않고, 해당 값을 표현하는 코드 입니다.


하지만, statement 는 이러한 expression 으로 표현된 값들을 가지고, 어떠한 행동을 취하는 코드입니다. 위의 예시에서 보면,


  • x=1 은, x 라는 변수에, 1 이라는 값을 할당 합니다
  • y = x + 1 은, x + 1 로 표현된 값을, y 라는 변수에 할당합니다
  • print(y) 는, y 의 값을 출력하는 동작을 합니다.

따라서, 위 3개의 예시는 모두 어떠한 동작을 하는 statement 입니다. 반면에, expression 은 값을 표현하는 단위로만 사용됩니다. statement 는 여러개의 expression 을 가지고 있을수 있고, 이것들을 가지고 어떠한 작업을 수행하는데 사용합니다.


Python 의 특징


  1. Open Source (무료)
  2. 배우기 쉽다 (다른 프로그래밍 언어에 비해서 쉬울수 있다)
  3. 고등 수준의 언어이다
  4. 범용성이 넓다
  5. 객체 지향 언어
  6. 상호 작용이 가능
  7. Interpreted 언어 이다

Python 의 역사


파이썬이라는 이름은, “Monty Python’s Flying Circus” 먼티 파이썬의 플라잉 서커스 라는, 1969년부터 1974년 까지 Monty Python 이라는 코메디 그룹에 의해서 방영된 영국 스케치 코미디 시리즈에서 따온 이름입니다

파이썬은 1990년대초, Guido Van Rossum 에 의해서, 네덜란드 국립 수학 컴퓨터 사이언스 리서치 기관에서 개발 되었습니다.


파이썬은, ABC 라는 언어의 후계자로써 만들어 졌고, 1991년도에 대중들에게 배포 되었습니다.

시간이 흐르면서, 많은 사용자 커뮤니티들이 언어 개발에 기여를 하였음에도 불구하고, Guido 는 파이썬의 기본 작성자로 남아 있습니다.

1991년도와 2001년도 사이에 여러번의 버전 배포가 있었고, 거의 모든 파이썬 배포판은 오픈 소스 입니다.


Python 의 주 사용처


  • 시스템 유틸리티 (시스템 어드민 도구, 커맨드 라인 프로그램들)
  • 웹 개발
  • GUI (Graphical User Interfaces)
  • 인터넷 스크립팅
  • 임베디드 스크립팅
  • 데이터베이스 엑세스 및 프로그래밍
  • 게임 프로그래밍
  • 빠른 프로토타이핑과 개발
  • 프로그램 배포

Python 을 사용하는 단체들


분야 단체
웹개발 Yahoo maps, Yahoo Group, Google, Zope Corporation, Ultraseek, Linux Weekly News, Mojam.com, Shopzilla
게임 Battlefield2, Crystal space, Star Trek Bridge Commander, Civilization 4, QuArk(Quake Army Knife)
그래픽 Industrial Light & Magic, Walt Disney Feature Animation, HKS, RoboFog, Caligari Corporation, Blender 3D, Jasc Software
금융 Altis Investment Management, ABN AMRO Bank, Treasury Systems
과학 National Weather Service, Radar Remote Sensing Group, Applied Maths, Biosoft, The National Research Council of Canada, AlphaGene, Inc. NASA, etc
전자 자동화 디자인 Ciranova, Productivity Design Tools, Object Domain, Red Hat
교육 University of Califonia, Irvine, New Zealand Digital Library, IT Certification Exam preparation, School Tool
비지니스 소프트웨어 Raven Bear Systems Corporation, Thawte Consulting, IBM, WuBook etc