내 스크립트는 현재 sys.argv
을 사용하여 프로그램에 제공된 입력 파일을 확인합니다.sys.argv와 반대로 'argparse'사용
대신 argparse
을 사용하려하지만 작동하지 않는 것 같습니다. 나는 그것을 설정하고 인수를 추가 할 수 있었지만 인수를 구문 분석하고 그 인수를 인쇄하면 네임 스페이스가 생깁니다. 어떻게 문자열을 얻을 수 있습니까? 기본적으로 인수를 문자열로 사용하고 해당 이름의 파일을 열고 싶습니다.
현재 내 sys.argv
은 다음과 같습니다
filename = sys.argv[1]
f = open(filename, 'r')
내 argparse
인쇄 밖으로 Namespace
다음과 같이
arg = parser.parse_args()
print arg
가 어떻게 파일을 열 것을 사용할 수 있습니까? 인수에 대한 오류 handlign이 훨씬 쉽기 때문에 argparse
을 사용하고 싶습니다.
실제로 오류 처리와 함께 내 문제를 해결했습니다 ('with' 문으로). 감사! – darksky
'with'는 컨텍스트 관리자입니다. 예외를 포함하여 컨텍스트를 종료 할 때 컨텍스트를 만드는 데 사용 된 개체가 제대로 마무리 될 것임을 보장합니다 (인터프리터 내에서 세그먼트 오류를 막음). 즉, 파일이 올바르게 닫히고 이러한 리소스는 아무리 발생해도 해제됩니다. – mgilson