당신이 Python에 대해 배우고 있다면, 모듈의 개념에 빠르게 접하게 될 것입니다. 모듈은 코드를 구조화하고 재사용 가능한 기능을 작성할 수 있게 해줍니다. 이것은 정리를 돕는 것뿐만 아니라 프로그래밍의 효율성도 향상시킵니다. 이번 튜토리얼에서는 Python에서 모듈을 생성하고 가져오는 방법에 대해 알아보겠습니다. 우리는 수학적 기능을 제공하는 파일을 작업하고, 이를 다른 Python 스크립트에서 사용하는 방법을 살펴볼 것입니다.
주요 내용
- 모듈은 다양한 기능을 포함하는 단순한 Python 파일입니다.
- 모듈을 가져오면 코드의 구조를 더 좋게 만들 수 있습니다.
- 다양한 이름으로 모듈을 가져오거나 특정 기능만 가져올 수 있습니다.
- 별칭과 선택적 가져오기를 사용하면 이름 충돌을 피할 수 있습니다.
단계별 안내
모듈 생성
Python에서 모듈을 생성하려면 먼저 관련 기능이 포함된 파일이 필요합니다. 예를 들어, 우리는 덧셈, 뺄셈, 곱셈과 같은 기본적인 수학 기능을 포함하는 arithmetik.py라는 파일을 만들 것입니다. 이 파일은 임의의 텍스트 편집기에서 생성할 수 있습니다.

arithmetik.py에서는 개별 기능을 정의합니다:
def subtrahieren(a, b): return a - b
def multiplizieren(a, b): return a * b
여기에는 나중에 기본 스크립트에서 사용할 세 가지 간단한 기능이 있습니다.
모듈 가져오기
이제 arithmetik.py 모듈을 작성했으니, 다른 스크립트에서 사용할 수 있습니다. 동일한 디렉토리에 있는 rechner.py라는 두 번째 파일을 생성합니다.

rechner.py에서는 다음 명령으로 모듈을 가져옵니다:
이제 모듈의 기능에 접근할 수 있습니다. 이를 시연하기 위해 몇 가지 변수를 정의합시다:
이제 예를 들어 덧셈 기능을 호출하고 결과를 출력할 수 있습니다:
이 줄은 a와 b의 덧셈 결과를 출력합니다. 스크립트를 실행하면 출력이 "17"임을 볼 수 있습니다.
별칭 사용
모듈을 짧은 이름으로 가져오고 싶다면, 이것도 가능합니다. 다음과 같이 하십시오:
이제 별칭 ar을 사용하여 기능을 호출할 수 있으며, 이는 코드를 좀 더 간결하게 만듭니다:
다른 이름에도 불구하고 모든 것이 정상적으로 작동합니다. 이는 개인의 기호에 불과합니다.

선택적 기능 가져오기
때때로 모듈의 모든 기능이 필요하지 않을 수 있습니다. 어떤 기능을 가져올지 선택할 수 있습니다. 다음 구문을 사용합니다:
이제 addieren 기능이 즉시 사용 가능하며, 모듈 이름을 명시할 필요가 없습니다.
따라서 addieren(a, b)를 호출하면 자동 완성이 다른 기능을 포함하지 않고 이를 바로 제안합니다.
이름 충돌 해결하기
별칭 및 선택적 가져오기 또 다른 장점은 이름 충돌을 피할 수 있는 것입니다. 만약 외부 라이브러리와 같은 이름의 모듈이 있다면, 기능을 여전히 사용할 수 있습니다.
당신의 모듈 arithmetik.py가 수학 모듈 math.py와 동일한 이름을 가지고 있다면, 충돌이 발생합니다. 그러나 별칭 지정이나 선택적 가져오기를 통해 이를 회피할 수 있습니다.

모듈 및 가져오기 종료
지금까지 보셨듯이, 모듈은 Python 프로그래밍의 중심 요소입니다. 모듈은 코드를 모듈화하고 재사용 가능하게 만드는 데 도움을 줍니다. 가져오기 및 다양한 가져오기 방법은 스크립트에서 기능에 대한 접근을 유연하게하고 제어할 수 있게 해줍니다.
요약 - Python 모듈 사용 및 가져오기에 대한 기초
이번 튜토리얼을 통해 간단한 Python 모듈을 만들고, 가져오고, 사용하는 방법을 배웠습니다. 모듈 및 다양한 가져오기 방법으로 코드 구조화의 중요성이 드러납니다. 이렇게 하면 프로그래밍을 훨씬 더 효과적으로 수행할 수 있습니다.
자주 묻는 질문
Python에서 모듈이란 무엇인가요?모듈은 다른 Python 스크립트에서 사용할 수 있도록 기능, 클래스 및 변수를 정의하는 Python 파일입니다.
모듈은 어떻게 가져오나요?import modulname 명령을 사용하여 파일을 가져올 수 있습니다.
import modul과 from modul import funktion의 차이점은 무엇인가요?첫 번째 명령은 전체 모듈을 가져오는 것이고, 두 번째 명령은 특정 기능만 가져옵니다.
이름 충돌을 어떻게 피할 수 있나요?별칭을 사용하거나 선택적으로 기능을 가져와 다른 모듈과의 충돌을 피할 수 있습니다.