ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬 기본편 정리(2)
    공부일기/파이썬 2020. 8. 15. 00:42

     

    함수

    def 이용해 새로운 함수 정의할 있다

     

     

    전달값과 반환값

    def 함수(전달값)

    Return 반환값

     

     

    기본값

    def profile(name, age=20, main_lang=“Python”):

        print(“이름: {}, 나이: {}, 사용 언어: {}”.format(name, age, main_lang))

     

    profile(“유재석”)

    profile(“김태호”)

     

    >>> 이름: 유재석, 나이: 20, 사용 언어: Python

    >>> 이름: 김태호, 나이: 20, 사용 언어: Python

     

    키워드값

    매개변수에 값을 직접 지정해 출력할 있다.

     

    가변인자

    서로 다른 개수의 값을 넣어줄 때는 * 시작되는 매개변수를 이용해 활용할 있다. 

    *language가 가변인자. 

     

     

    지역변수와 전역변수 *

    global 이란 키워드를 사용해 전역변수를 설정해 있다.

     

     

    표준 입출력

    sep: 쉼표 어떤 것을 입력할 정할 있다.

    end: \n 하지 않고 문장의 끝을 바꿔줄 있다.

    .ljust( ) .rjust( ): 괄호 안의 칸을 확보 하고 왼쪽, 오른쪽 정렬이 가능하다

    .zfill( ) : 괄호 안의 칸을 확보하고 값이 없을 경우 0으로 채운다.

     

    input으로 입력값을 받는 경우 항상 str 형태로 저장된다.

     

    다양한 출력 포맷 

    13번은 ㅋ으로 바꿔 출력했다.

     -출력값

     

    >>>        500
    >>>       +500
    >>>       -500
    >>> 500_______
    >>> 10,000,000,000
    >>> +10,000,000,000
    >>> -10,000,000,000
    >>> +10,000,000,000ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
    >>> 1.666667
    >>> 1.67

     

     

    클래스

    붕어빵 틀에 비유할 있다(모양을 갖추고 재료를 넣으면 틀에 맞춰 생성). 서로 연관이 있는 변수와 함수의 집합

    클래스로부터 만들어지는 녀석들을객체라고 표현한다. 

    실현돼 있는 마린, 탱크 같은 녀석들은인스턴스 

    객체(Object) 는 소프트웨어 세계에 구현할 대상, 클래스(Class)는 이를 구현하기 위한 설계도, 인스턴스(Instance)는 이 설계도에 따라 소프트웨어 세계에 구현된 실체.

     

    __init__

    파이썬에서 사용되는 생성자, 자동으로 호출되는 부분

    설정한 클래스 함수에서 셀프를 제외하고 정의된 갯수만큼 입력해 줘야 객체 생성 가능.

    위의 예시에선 name, hp, damage 가 필요.

     

     

    멤버변수

    클래스 내에서 정의 변수. name, hp, damage 등등

    클래스 외부에서 내가 원하는 변수에 대해 확장을 수도 있고, 확장된 변수는 내가 확장한 객체에만 적용된다.

     

     

    메소드

    attack, damaged 라는 함수를 만들고 메소드로 사용할 있다.

     

     

    상속

    8번 줄 AttackUnit뒤의 ( ) 부분이 상속받은 부분. name과 hp 부분은 부모클래스의 것을 그대로 가져온다

     

     

    다중상속

    자식클래스가 상속받는 부모클래스가 2 이상인 경우

    AttackUnit과 Flyable의 멤버변수를 그대로 상속 받음

     

     

    메소드 오버라이딩

    자식 클래스에서 정의한 메소드를 사용하고 싶을 , 메소드를 새롭게 정의해서 사용하는

     

     

    pass

    아무런 동작을 하지 않고 프로그램을 종료함

     

     

    Super

    super().__init__(   ) 형태로 사용하며 super() 사용시 self 없이 사용

    다중상속을 받을 경우 super 맨처음 클래스에 대해서만 init 함수가 호출된다.

     

     

    예외처리

    try, except 활용해 예외처리를 있다. 

    Exception as err 사용할 에러메시지를 그대로 출력할 수도 있다.  

     

     

    사용자 정의 예외처리

     

     

    에러 발생시키기

    raise 이용해 에러를 발생시킬 있음.

     

     

    Finally

    try 내에 있는 명령이 실행 되든 오류가 나든 상관없이 무조건 실행되는 구문

     

     

    모듈

    함수의 정의나 클래스 파이썬 문장들을 담고 있는 .

    필요한 것들끼리 부품처럼 만드는 것을 모듈화

    Ex) 자동차 이용 타이어나 범퍼 파손시 해당 부품만 교체하면 .

     

     

    모듈을 사용하려는 폴더와 같은 경로에 있거나 파이썬 라이브러리들이 모여있는 폴더에 있어야 사용 가능 

    다양한 형태로 모듈을 불러와 사용할 있다. 

     

    빨간줄은 왜 뜬걸까...

     

     

    패키지

    모듈들을 모아 놓은 집합. 하나의 디렉토리에 여러 모듈 파일들을 모아 놓은 . 

    여기도 빨간 줄은 왜 뜬걸까...

     

     

    __all__

    패키지 안의 __init__파일을 통해 from travel import * 사용 가능

    __all__ = [ ] 방식으로 사용 가능

     

     

    모듈 직접 실행

    If __name__ == ‘__main__’

    함수 표현을 통해 모듈 내에서 직접 실행하는지, 외부에서 불러와서 실행하는지 구분 가능

     

     

    pip install

    pypi.org 페이지를 통해 다양한 패키지를 다운받을 있다.

    터미널창에 ‘pip install 이름 통해 설치

    pip list: 설치된 패키지 확인

    pip show 이름: 패키지 정보 확인

    pip install —upgrade 이름: 패키지 업그레이드

    pip uninstall 이름: 패키지 삭제

     

     

    내장함수

    input: 사용자 입력을 받는 함수

    dir: 어떤 객체를 넘겨줬을 객체가 어떤 변수와 함수를 가지고 있는지 표시

    등등 

    구글에 list of python builtins 검색을 통해 다양한 내장함수 확인 가능

     

     

    외장함수

    직접 import해서 사용해야 하는

    구글에서 list of python modules 검색시 외장함수 목록 확인 가능

    glob: 경로 내의 폴더/ 파일 목록 조회(윈도우 dir)

    >>> print(glob.glob(“*.py”)) # 확장자가 py 모든 파일

     

    os: 운영체제에서 제공하는 기본 기능

    time: 시간 관련 함수

    >>> print(time.localtime())

    >>> print(time.strttime(“%Y-%m-%d %H:%M:%S”)

     

    import datetime

    print(“오늘 날짜는”, datetime.date.today())

     

    timedelta: 날짜 사이의 간격

    today = datetime.date.today()

    td = datetime.timedelta(days=100)

    >>>print(“우리가 만난지 100일은”, today + td)

     

     

     

     // 두 번에 걸쳐서 정리를 끝냈는데, 클래스 부분부터는 좀 헷갈렸다. 들었을 땐 이해가 갔지만 정리하려니 꽤 많은 양이였고, 직접 따라해보는게 훨씬 이해가 쉬워서 강의를 보면서 다시 이해해도 괜찮을 것 같다.

    아마 Do it! 점프 투 파이썬 책을 재구성해서 강의를 만드신 것 같다. 도서관에서 책의 목차를 보고 나중에 한 번 봐야지 했었는데 오히려 더 쉬운 예시들을 통해 설명하고 있어서 책은 따로 안 볼 예정.

    '공부일기 > 파이썬' 카테고리의 다른 글

    파이썬 기본편 정리(1)  (0) 2020.08.09
Designed by Tistory.