지속가능티끌/Python
Python. 다른 파이썬 파일의 함수 호출하기 . import, from import, import as
i.got.it
2020. 3. 19. 14:54
개요
- 파이썬 코딩시 1개의 파일에 모든 소스코드 구현해버리면 전체 코드 구조 가독성 훼손되어 유지보수 피곤해진다.
- 분리가능한것들을 적절하게 별도의 파일에 구현하고 메인에서 해당 파일 import 하여 활용.
######## 파일 1. bybit_function.py
def my_function1():
print("Hello Bybit");
##################################################################################
###### 파일 2. main.py
import bybit_function # 파일의 확장자 py 없이 임포트.
bybit_function.my_function1() # bybit_function.py 의 함수 my_function1 호출.
###### import 하면서 다른이름으로 받기.
import bybit_function as bf # bf 로 받았다.
bf.my_function1() # bybit_function.py 의 함수 my_function1 호출.
###### import 하면서 특정함수 1개만 가져오는법.
from bybit_function import my_function1
my_function1() # bybit_function.py 의 함수 my_function1 호출.
###### import 하면서 모든함수 가져오는법.
from bybit_function import *
my_function1() # bybit_function.py 의 함수 my_function1 호출.
if __name__ = '__main__' : 관련
- 앞의 코드 예에서 파일1 bybit_function.py 개발 과정중에 이 파일 1개만 실행시키면서 시험해볼 일이 당연히 생긴다.
아래 코드 처럼 내가 만든 함수 시험 해보기 위하여 my_function1() 을 호출하는 구문 추가했다.
######## 파일 1. bybit_function.py
def my_function1():
print("Hello Bybit");
// test
my_function1()
위와같이 bybit_function.py 만 실행할때야 시험용으로 호출해본 my_function1() 이 실행되는건 문제없지만,
파일2에서 import bybit_function 에 의해서도 시험용으로 넣어뒀던 my_function1() 이 실행된다. py 파일이 다른 곳에 import 되어 실행되지 않을때만 실행되게 하고 싶을 때 아래 코드 처럼 if 문을 추가해주면 된다.
######## 파일 1. bybit_function.py
def my_function1():
print("Hello Bybit");
if __name__ == '__main__':
// test
my_function1()
연관
첫 등록 : 2020.03.19
최종 수정 : 2022.02.010
단축 주소 : https://igotit.tistory.com/2498