메인 함수를 사용하지 않고 파이썬 스크립트에서 직접 명령줄 인수를 처리하려면
스크립트의 전역 영역에서 직접 `sys.argv`를 사용할 수 있습니다.

이 방식은 스크립트가 간단하거나,
한 번 실행되고 끝나는 단일 작업을 수행할 때 편리합니다.
아래는 메인 함수를 사용하지 않고
명령줄 인수를 처리하는 간단한 예시입니다.
import sys
# 명령줄 인수의 길이를 확인합니다.
if len(sys.argv) > 1:
# 첫 번째 인수(파일 이름 제외)를 출력합니다.
print(f"Received argument: {sys.argv[1]}")
else:
print("No arguments were received.")
이 코드는 스크립트가 실행될 때 전역 영역에서 바로 `sys.argv`를 검사하여,
사용자가 명령줄을 통해 전달한 인수를 처리합니다.
`if __name__ == "__main__":` 구문을 사용하지 않기 때문에,
스크립트가 다른 스크립트에 의해 임포트될 경우에도 이 코드가 실행됩니다.
이 점은 특히 모듈이나 라이브러리를 작성할 때 고려해야 할 중요한 부분입니다.
단, 이 방식은 코드의 재사용성과 모듈화 측면에서는 메인 함수를 사용하는 방법보다 덜 효율적일 수 있습니다.
스크립트의 기능을 다른 프로그램에서 재사용하려고 할 때,
전역 영역에 바로 작성된 코드는 임포트 시에도 실행되기 때문에, 예기치 않은 동작을 유발할 수 있습니다.
따라서, 스크립트의 규모가 커지거나, 모듈로서의 재사용성을 고려해야 하는 경우에는
`if __name__ == "__main__":` 구문을 사용하여 메인 함수를 정의하는 것이 좋습니다.
https://link.coupang.com/a/bvvBjI
Let’s Get IT 파이썬 프로그래밍 데이터 분석 프로젝트로 프로그래밍 사고력 기르기
COUPANG
www.coupang.com
* 이 외 생각해볼만한 내용들 !
Q1:Python 스크립트에서 명령줄 인수를 처리하기 위해 `argparse` 모듈을 사용하지 않고 기본적인 방법을 활용하려면 어떻게 해야 하나요?
Q2:명령줄 인수를 처리할 때 `sys.argv`의 한계는 무엇이며, 이를 극복하기 위한 방법은 무엇인가요?
Q3:Python 스크립트를 모듈로서 다른 스크립트에서 재사용할 때 발생할 수 있는 문제점과 그 해결 방안은 무엇인가요?
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다
'무근본 IT 지식 공유 > 무근본 파이썬(Python)' 카테고리의 다른 글
파이썬에서 파라미터를 정확히 한개만 입력받기 !! -예시코드 및 설명 (1) | 2024.03.26 |
---|---|
Python에서 파라미터를 전달받아 프로그램을 구동하는 방법 및 예시 ! (0) | 2024.03.26 |
[무근본파이썬] 레드블랙 트리가 대체 뭐야?! (1) | 2023.11.25 |
[무근본파이썬] 메세지 큐와 그 중요성: 온라인 쇼핑몰 예시와 코드로 이해하기 (0) | 2023.09.19 |
무료로 사용할 수 있는 클라우드 기반의 파이썬 실행환경 소개 (0) | 2023.09.17 |
댓글