파이썬 인자 값 입력받기
본문
인자 값을 개수를 정해두지 않고 입력을 받고, 입력받은 인자를 integer 형태로 바꿔서 start 리스트에 저장하고 싶습니다..!!!!
그런데 자꾸 8번째 라인에서 아래와 같은 오류가 뜨네요ㅠㅠ
제힘으로 해결하고 싶었는데 도저히 모르겠습니다,,,
도와주세요,,ㅜㅜ
답변 2
안녕하세요?
파이썬의 sys.argv에 대해 설명을 드리면 그 자체로 리스트에 해당하며,
sys.argv[0]에는 실행하는 스크립트의 경로가 담기게 되고,
sys.argv[1]부터 명령행을 통해 전달되는 인자값들을 저장하고 있습니다 ^^
위와 같은 이유로 인하여 다음과 같이 명령행에 한 개의 인자값을 넣더라도 len(sys.argv)는 2가 됩니다.
python start.py 15
작성하신 코드에서 다음과 같이 6번째 행을 수정하시면 에러가 발생하지 않습니다 ^^
a = range(1, len(sys.argv))
참고로 원하시는 결과는 map 함수를 이용하여 보다 간단히 처리할 수 있습니다 :)
import sys
start = list(map(int, sys.argv[1:]))
궁금하신 점이 해결되셨으면 좋겠네요~
그럼 좋은 주말 되세요 :)
!-->!-->!-->start= [ ""]*100
답변을 작성하시기 전에 로그인 해주세요.