본문 바로가기

[Python] 59강 sys 모듈과 실행 인자 (프로그램을 명령어처럼)

@도마22026. 1. 19. 21:00
728x90


이 강의는 파이썬 강의 59강입니다.
이전 강의에서는 os 모듈로 파일과 폴더를 다루는 방법을 배웠습니다.
이번 강의에서는 프로그램을
더 자동화답게 실행하는 방법,
즉 sys 모듈과 실행 인자(argv)를 배웁니다.

이 단계부터 파이썬 파일은
“스크립트”가 아니라
도구(tool)가 됩니다.


sys 모듈은 왜 필요한가

지금까지 프로그램은
실행하면 항상 같은 방식으로 시작했습니다.

하지만 실제 자동화 프로그램은 다릅니다.

  • 실행할 때 옵션을 주고 싶다
  • 파일 이름을 미리 전달하고 싶다
  • 사용자 입력 없이 실행하고 싶다

이걸 가능하게 해주는 게
실행 인자입니다.


1️⃣ sys 모듈 불러오기

실행 정보는
sys 모듈에 들어 있습니다.

import sys

2️⃣ 실행 인자란 무엇인가

실행 인자는
프로그램 실행 시 함께 전달되는 값입니다.

터미널에서 이렇게 실행했다고 가정합니다.

python test.py hello world

이때 전달된 값들은
파이썬에서 이렇게 들어옵니다.


3️⃣ sys.argv 구조

sys.argv는
리스트입니다.

import sys

print(sys.argv)

출력 예시

['test.py', 'hello', 'world']

 

  • argv[0] → 파일 이름
  • argv[1]부터 → 전달된 인자들

4️⃣ 실행 인자 사용하기

전달된 값을
변수처럼 사용할 수 있습니다.

import sys

name = sys.argv[1]
print("안녕하세요,", name)

 

이렇게 실행합니다.

python test.py 철수

5️⃣ 인자 개수 확인하기

인자가 없을 수도 있으니
항상 개수를 확인하는 게 안전합니다.

import sys

if len(sys.argv) < 2:
    print("이름을 입력하세요.")
else:
    print("안녕하세요,", sys.argv[1])

6️⃣ 실행 인자로 동작 바꾸기

실행 인자에 따라
프로그램 동작을 바꿀 수 있습니다.

import sys

if sys.argv[1] == "backup":
    print("백업 실행")
elif sys.argv[1] == "clean":
    print("정리 실행")

자동화 프로그램의 핵심 패턴입니다.


7️⃣ sys.exit()로 프로그램 종료하기

조건에 따라
프로그램을 바로 종료할 수도 있습니다.

import sys

if len(sys.argv) < 2:
    print("옵션이 필요합니다.")
    sys.exit()

이번 강의 핵심 정리

  • sys 모듈은 실행 정보를 다룬다
  • sys.argv는 실행 인자 리스트다
  • 실행 인자로 프로그램 동작을 바꿀 수 있다
  • 자동화 프로그램의 기본 기술이다

728x90
도마2
@도마2 :: 도마의 코드노트

초보자를 위한 코딩 강의를 정리합니다. 파이썬부터 C#, Unity 게임 제작까지 차근차근 기록합니다. — 도마

목차