211208 TIL

CoderS·2021년 12월 8일
0

TIL DAY 125

오늘 배운 일

✔️ Python 중급

  • 네임스페이스

    • 파일에서 정의된 모든 이름들을 뜻한다.

    그리하여 dir 함수는 파일의 네임스페이스를 리턴한다.

    예 ) 다른 파일에 정의가 된 함수를 또 다시 정의한다면...

    결과값 :

    파이썬에서는 똑같은 이름으로 여러 함수가 정의되었을 때, 가장 나중에 정의된 함수를 사용한다!

    그러면 어떻게 변수나 함수 중복 막는 법!

    • 모듈에서 함수를 가져올 때, 이름을 다른것으로 바꿔준다.

      as를 하고 원하는 이름으로 바꿔준다.

    • 모듈 그대로 import하기

      import를 작성하고 원하는 파일 가져오기

  • 모듈 검색 경로

    sys라는 스탠다드 모듈을 통해서 특정 경로를 확인이 가능하다.

    예 )

    sys 모듈에는 파이썬의 실행환경과 관련된 변수들과 함수들이 저장되어있다.

    보통 일반적으로 같은 폴더에 저장되어있으면 쉽게 모듈을 찾을 수 있다.

  • 스크립트 vs 모듈

    스크립트

    • 프로그램을 작동시키는 코드를 담은 실행 용도의 파일

      예 )

    모듈

    • 프로그램에 필요한 변수들이나 함수들을 정의해 놓은 파일

      예 )

  • 모듈을 스크립트로 사용하기

    모듈 파일

    결과값 :

    • 실행하는게 없기 때문에 아무것도 출력이되지 않는다.

    예 ) 실행하는 파일로 만들기

    결과값 :

    • circle과 square 함수들의 면적을 계산할 때 맞으면 True가 뜬다.

    하지만 문제가있다.

    스크립트를 실행하면...

    결과값 :

    • 모듈에서 실행했던 것들도 출력이 되어버린다.

    방법은...

    name이라는 특수변수를 사용하면된다.

    name은 모듈의 이름을 저장해놓은 변수이다.

    name의 값은 파이썬에서 알아서 정해준다.

    만약 파이썬 파일을 직접 실행하면, 그 파일의 name은...

    파일을 다른곳에서 import해서 사용하면 name은 원래 모듈 이름으로 설정된다.

    확인하기

    Area.py

    결과값 :

    • 직접 실행하니 이름이 main으로 뜬다.

    run.py

    결과값 :

    • run 파일에서 직접 실행하니 main이라고 뜨고, area 파일은 import 되니까 이름이 area라고 출력된다.

    조건문을 작성해서 모듈의 있는 실행코드들을 막기

    run.py를 실행하면...

    결과값 :

    • True가 뜨지않는다.

끝으로 :

  • 오늘은 다소 쉬우면서 어려운 느낌을 많이 받는 것 같다.
  • 다시 한 번 공부해야겠다.
profile
하루를 의미있게 살자!

0개의 댓글