빅데이터 2019. 3. 26. 14:39

Python programming


객체지향적, 동적 타이핑 언어


파이썬 특징

1. 플랫폼

플랫폼 = OS   

플랫폼: 각자 다른 목적을 가지지만, 한 장소에 모여서 각자의 역할을 수행하는것

: 윈도우, 리눅스, 안드로이드, 맥OS, IOS등 프로그램이 실행되는 운영체제가 플랫폼


2. 독립적

OS에 상관없이 한번 프로그램을 작성하면 사용가능


3. 인터프리터언어

소스코드를 바로 실행할 수 있게 지원하는 프로그램 실행 방법



파이썬 특징 2

가독성

– 간결하고 가독성이 좋다.

– 코드블럭을 들여쓰기(indentation)로 구분.


풍부한 라이브러리

– 매우 광범위한 라이브러리가 기본으로 포함되어 있음.

– 외부 라이브러리가 풍부하며 확장이 쉬움.


접착성

– 쉽게 라이브러리를 추가할 수가 있습니다. 

– 파이썬에서 C로 구현된 부분을 사용할 수도 있으며, C에서 파이썬을 사용할 수도 있습니다.


무료

– 파이썬은 파이썬 소프트웨어 재단(Python Software Foundation)에서 관리하고 있음. 

– 무료와 다름없는 Python Software Foundation License.


유니코드

– 파이썬에서의 문자열들은 모두 유니코드입니다. 

– 우리가 한글, 한자 등을 표현하려고 특별한 노력을 할 필요가 없습니다.


동적타이핑

– 런타임 시에 타입 체크를 하는 동적타이핑을 지원하며, 

– 메모리 관리 자동으로 합니다.



파이썬 특징 3

객체 지향적 언어 

실행 순서가 아닌 단위 모듈(객체) 중심으로 프로그램을 작성 하나의 객체는 어떤 목적을 달성하기 위한 행동(method)와 데이터(attribute)를 

가지고 있음 


동적 타이핑 언어 

프로그램이 실행하는 시점 프로그램이 가지고 있는 데이터에 대한 타입을 검사함



파이썬을 사용하는 이유?

동적으로 메모리가 할당됨

인간 지향적인 간단한 문법

다양한 라이브러리, 넓은 활용범위

문자열을 자유롭게 처리할수 있다.



파이썬 2.0 3.0 차이

파이썬 2.0

프린트하고 한칸 뛰움

print "welcome"


파이썬 3.0

프린트하고 가로열고 가로 닫음

print("welcome")



코딩 컨벤션

ㆍ프로그래밍은 공동작업이 많기 때문에 프로그램을 작성하는 가이드라인 언어마다 정해져 있음 

ㆍ자신만의 방식으로만 프로그램을 작성할 경우, 다른 사용자의 이해가 떨어짐 

ㆍ컴퓨터가 이해할 수 있는 코드는 어느 바보나 다 짤 수 있다. 좋은 프로그래머는 사람이 이해할 수 있는 코드를 짠다. - 마 틴 파울러 – 

ㆍ이를 위해 기본적인 코딩 작성법을 코딩 컨벤션이라 함



데이터 구조

파이썬 에서는 리스트, 튜플, 집합(Set), 사전(dictionary) 등의 기본 데이터 구조를 제공함

사전이 예를 들면 C++에서의 STL 역할과 동일한다.


스택, 큐


튜플(tuple)

ㆍ리스트와 동일한 개념이나 값의 변경이 불가능함

ㆍ선언시 “[ ]” 가 아닌 “( )”를 사용 

ㆍ리스트의 연산, 인덱싱, 슬라이싱 등을 동일하게 사용

값이 변하지 않고 고정되어있다. (리스트는 값이 변경이 가능하다)


t = (1,2,3) 

print t +t , t * 2     # (1, 2, 3, 1, 2, 3) (1, 2, 3, 1, 2, 3) 

len(t)                  # 3 

t[1] = 5               # Error 발생 (값을 변경할 수 없다.)



집합(set)

ㆍ값을 순서없이 저장, 중복 불허 하는 자료형 

ㆍset 객체 선언을 이용하여 객체 생성


s = set([1,2,3])              # set 함수를 사용 1,2,3을 집합 객체 생성 

s.add(1)                      # 1를 추가, 중복불허로 추가 되지 않음 s.remove(1) # 1 삭제 

s.update([1,4,5,6,7])       # [1,4,5,6,7] 추가 

s.discard(3)                  # 3 삭제

s.clear()                       # 모든 원소 삭제



사전 (Dictionary)

ㆍkey와 value를 매핑하여 key로 value를검색

ㆍ다른 언어에서는 HashTable이라는용어를사용

ㆍ{Key1:Value1, Key2:Value2, Key3:Value3 ...} 형태



※ 한글입력을 위해서 다음 행을 첫 줄에 삽입

# -*-coding: utf-8 -*

posted by 마스터박 MasterPark

댓글을 달아 주세요