![Python 스크립트에 매개변수를 전달할 수 있나요?](https://linux55.com/image/75612/Python%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%20%EB%A7%A4%EA%B0%9C%EB%B3%80%EC%88%98%EB%A5%BC%20%EC%A0%84%EB%8B%AC%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F.png)
쉘 스크립트에 매개변수를 전달하는 방법을 알고 있습니다. 이러한 매개변수는 AWS 데이터파이프라인에서 선언되고 전달됩니다. 쉘 스크립트는 다음과 같습니다:
firstarg=$1
secondarg=$2
Python에서 이 작업을 어떻게 수행합니까? 정확히 같은가요?
답변1
이것은 나에게 효과적입니다.
import sys
firstarg=sys.argv[1]
secondarg=sys.argv[2]
thirdarg=sys.argv[3]
답변2
sys에서 argv를 사용할 수 있습니다
from sys import argv
arg1, arg2, arg3, ... = argv
실제로 명령줄에 매개변수를 원하는 만큼 입력할 수 있습니다. argv는 인수를 포함하는 목록입니다. 따라서 arg1 = sys.argv[0] arg2 = sys.argv[1]이라고도 할 수 있습니다. . .
또한 sys.argv[0]은 단지 Python 프로그램의 이름일 뿐이라는 점을 기억하세요. 또한 "eval" 및 "exec" 함수는 명령줄 입력을 사용할 때 유용합니다. 일반적으로 명령줄의 모든 내용은 문자열로 해석됩니다. 따라서 명령줄에 수식을 제공하려면 eval()을 사용하세요.
>>> x = 1
>>> print eval('x+1')
2
답변3
import sys
# Display File name
print("Script name ", sys.argv[0])
# Display the first argument
print(f"first arg {sys.argv[1]}")