질문드립니다.
argparse 모듈에 대해 질문드립니다.
사용 초기에 아래 코드를 사용하시던데
parse랑 args 변수에 담은 것들이
무엇을 의미하는지 알려주실수있으신가요?
또한 nargs = "+"는 입력받은 모든값들을
문자열 리스트로 만드는 코드인가요?
답변 1
2
parse 변수는 argparse 의 ArgumentParser() 기능을 사용하기 위핸 객체 변수 입니다. 객체변수는 쉽게 어떤 기능을 동작하기 위해 생성된 변수라 생각하시면 쉬울듯 합니다. 이렇게 생성된 parse 변수는 add_argument() 라는 함수를 사용할 수 있습니다. 이 함수는 사용자가 실행시에 넘겨준 아규먼트를 파싱하기 위해 준비를 하는 과정이라보시면 됩니다. add_arguemnt("옵션", type=자료형태) 등으로 사용할 수 있으며 이 외에도 여러가지 기능이 있습니다. 다시 말씀드리지만 이 과정은 실행시 넘겨준 아규먼트를 파싱하기 위한 준비의 단계입니다. 어떤 인자가 어떤 자료형이니 실행시 넘어오면 알아서 파싱해라 라고 알려주는 역할만 하게 됩니다.
이렇게 위에서 add_argument() 함수로 아규먼트 파싱을 위한 준비가 다 되었으면 args = parse.parse_args() 를 호출하여 실제 아규먼트를 파싱하여 그 결과를 args 에 담습니다. 그러면 실제 우리는 args.f 형태로 아규먼트를 보다 쉽게 사용할 수 있게 됩니다.
다시 쉽게 정리하면 parse.add_argument()로 사용될 아규먼트를 parse 객체에 알려주고 parse_args() 를 호출하여 실제 파싱을 동작하게 만들어 args = parse.parse_args() 같이 args 변수에 그 결과를 담아 args 를 사용하게 됩니다.
nargs 옵션은 말씀하신것 처럼 다음 아규먼트 옵션이 있기 전까지의 모든 인자를 하나의 옵션에 담는 역할을 합니다. 보다 자세한 사항은 공식 문서를 참고하시면 도움이 될듯 하여 아래 링크를 추가 합니다.
38강 = 연산자 더하고 빼기
0
60
2
주석처리
0
116
1
함수의 파라미터값 msg
0
155
1
강의자료 이미지 안나옴
0
239
3
강의자료 질문 두번째
0
165
3
강의자료 관련 질문
0
116
1
파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.
0
235
1
소수 너무 어려워요
0
245
1
imagefont 함수 사용
0
239
1
pylint
0
357
1
add 함수 문의 ㅠㅠ
0
283
1
형식 문의드립니다.
0
209
1
변수 명을 왜 src, tar로 하셨는지 궁금합니다.
0
602
1
숫자야구 코드를 짜 봤는데 뭔가 이상합니다.
0
253
1
zsh: command not found: pylint
0
269
1
텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ
0
546
1
질문드립니다.
1
374
2
list.reverse() 출력에 대해서 질문있습니다.
1
433
1
데코레이터 함수 및 동작시간 질문입니다.~
1
323
2
opencv 사용하면서 궁금한점 (해상도)
1
781
1
질문드립니다.
1
299
1
아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?
1
445
1
크롤링안되는 현상 문의 드립니다.
1
421
1
파이썬 크롤링 관련 문의
1
277
1





