Python 개요

2021. 5. 3. 11:47{Programing}/Python

인터프리터, 객체지향 대화형 언어.

 

명령 프롬프트(windows)에서 곧바로 프로그래밍이 가능한 언어.

 

객체 기반의 프로그래밍이 가능한 언어.

 

다른 언어들로 작성된 모듈과 연동이 쉬워 스크립트 언어로서도 사용됨.

 

코드 블록을 {} 로 구분하는 것이 아닌, 들여쓰기로 구분.

들여쓰기는 공백4칸(스페이스바 4번)이나 탭으로 한다. 주의할 점은 들여쓰기 방식을 통일해야한다는 점.

공백4칸으로 했다면 전부 통일. 탭으로 했다면 전부 통일해야함.

남이 쓴 코드를 수정하다가 들여쓰기때문에 오류가 난다면 방법을 체크해보자.

X되보라고 방법 바꿔놓는 짓은 하지말자.

 

c/c++ 같은 언어보다 실행속도가 느리지만, 프로토타이핑 용이나, 속도에 크게 구애받지 않는 분야에서 주로 사용.

속도에 민감한 부분은 분리해서 c/c++로 모듈화 하면 문제가 해결될수 있다.

 

현재는 대부분이 python 3.x 버전대를 사용한다.

 

변수 / 자료형

 

파이썬에서는 변수의 자료형을 명시하지 않는다.

대입되는 데이터의 자료형에 따라 결정됨.

 

정수형 : 양,음,0 

실수형 : 양,음, 지수표현( 5.4E5, 5.4E-5 같은 방식.)

진수형 : 8진(0o185)-octa, 16진(0x4fc)-hexa

 

문자열 : "aaa"  , 'aaa'  ,  """aaa""" ,   '''aaaa''' :

서로 다른 따옴표 안쪽에 넣을수 있음.  "aa'a'aaa",  'aaa"a"aaaa'

'aaa\'aaa' 같이 같은따옴표 안에 같은걸 넣으려면 백슬래시가 필요.

 

파이썬에서는 리스트 = 배열이라고 봐도 무방함.

리스트 : []연산자로 인덱스 접근이 가능함.  생성할때도 [] 연산자 안에 , 로 변수를 구분해서 넣는다.

슬라이싱이라는 기술이 등장.

a[start:end:step] 

start : 시작점 일반 인덱스처럼 0부터 시작.

end : 끝점, 1부터 시작.

step : 건너 뛰거나 역으로 검색하기위한 조건식. 양의 정수로 입력하면 건너뛰고 -1을 입력하면 끝에서부터 역으로 검색.

 

튜플 : 리스트와 비슷하나 ( ) 연산자로 생성되고 관리됨. 요소가 하나일때도 , 를 빼놓을수 없다. 값을 바꿀수 없다.

즉, 실행하는 동안 변하지 않아야 하는 값들에 대한 자료구조로 사용.

 

딕셔너리 : key, value 의 쌍으로 이루어진 자료형. hash. {}연산자로 표기하며, {key: value, key:value} 구성으로 작성.

key로 튜플과 상수를 사용. key는 변하면 안되는 값이기때문, 중복되어서도 안됨. 만약 중복되어서 삽입되면, 마지막으로 입력된 key 쌍만 활성화됨.

추가 시에는 

a = {1: 'a'}

a[2] = 'b'

같이 []연산자에 key, 대입으로 value를  넣는다.

삭제시에는 

del a[1] 로 [] 연산자에 key 를 넣어 삭제한다. 

 

집합 : 함수처럼 생성하며 set(리스트or 문자열) 처럼 생성함.

결과값은 중복을 제외하고 생성됨. 순서가 없어 인덱싱 접근을 할수 없다. 즉, 리스트나 튜플로 변환후 인덱싱 접근이 가능해짐.

 

bool : true, false

 

명령문 구조

각 명령문이나 함수 선언 클래스 선언 등은 : (콜론)을 기준으로 닫힘.

if 조건문 :

    수행문

elif 조건문 :

    수행문

else : 

    수행문

 

while 조건문 :

    수행문

 

for 변수 in 변수범위:

    수행문

변수 범위는 range() 함수나 리스트 튜플 같은 구조를 사용함.

 

def 함수명(매개변수1,...) :

    수행문

    return 반환값 #생략가능.

 

class objectA:

    def __init__(self):

 

    def a(b,c):

        return b+c

 

#상속, 오버라이딩

class objectB(objectA):

    def __init__(self):

 

    def a(b,c):

        if b==0:

            return 0

        else:

            return b+c

 

'{Programing} > Python' 카테고리의 다른 글

scikit-learn  (0) 2021.05.10
기본 커맨드 변수 및 시스템 변수, 약속 함수명 등  (0) 2021.05.06
토이프로젝트 목록  (0) 2021.05.03
pandas  (0) 2021.05.03
Numpy  (0) 2021.05.03