https://docs.python.org/3/tutorial/stdlib.html#command-line-arguments

sys.argv

  • sys.argv는 따로 파싱을 하지 않고 입력 인자를 리스트로 받아서 실행하는 것
  • 스크림트 포함 인자 리스트
    • python demo.py one two ['demo.py','one','two']
    • 간단히 사용할 때 : sys.argv[1:] 로 인자만 슬라이스

argparse

  • 파싱을 할 때 값에 대한 예외 처리를 미리 해서 안정적으로 사용할 수 있다.
import argparse
parser = argparse.AtgumentParser(
	prog="top",
	description="show top lines from each file",
)
parser.add_argument("filenames", nargs="+") #하나 이상 파일
parser.add_argument("-l","--lines",type=int, default=10) #선택적옵션
args=parser.parse_args()
 
print(args.filenames, args.lines)

실행 예시

python top.py --lines=5 alpha.txt beta.txt
 
# args.filenames -> ['alpha.txt','beta.txt']
# args.lines -> 5
 
python top.py a.txt
# args.lines -> 10

← python 3.14으로