함수
.py 파일을 가르킨다.# 아래 모듈을 작성 후 mymodule.py로 저장하자.
def add(valuea, valueb):
return valuea + valueb
def multiply(valuea, valueb):
return valuea * valueb
def power(valuea, valueb):
return valuea ** valueb
import mymodel
mymodule.add(3,4)
mymodule.multiply(3,4)
mymodule.power(3,4)
# file: ex02.py
import sys
if __name__ == "__main__":
print("Arguments:", sys.argv)
c:\users\user\repo\mse> python ex02.py a b c 1 23
~/repo/mse $ python ex02.py a b c 1 2 3
아래를 myprogram.py 파일(모듈)로 작성하여 저장하자.
import argparse
if __name__=='__main__':
parser = argparse.ArgumentParser()
parser.parse_args()
그 다음 CLI에서 아래와 같이 명령문을 쳐보자.
c:/users/user> python myprogram.py --help
usage: main.py [-h]
options:
-h, --help show this help message and exit
다음으로 myprogram.py을 열어서 다음과 같이 수정해봅시다. x argument를 추가하였고, $x^2$을 출력합니다.
import argparse
if __name__=='__main__':
parser = argparse.ArgumentParser()
parser.add_argument("x", type=int, help="the base")
args=parser.parse_args()
print(args.x**2)
--help 기능아래와 같이 명령문을 입력하면 …
c:\users\user> python myprogram.py --help
다음과 같이 출력되었나? 출력된 결과물을 살펴보자.
usage: main.py [-h] x
positional arguments:
x the base
options:
-h, --help show this help message and exit
명령어를 바꿔 다음과 같이 입력해보자.
c:\users\user> python myprogram.py 3
given x: 3
x^2: 9
import argparse
def add(x,y):
return x+y
if __name__=='__main__':
parser=argparse.ArgumentParser()
parser.add_argument('x',type=int,help='the 1st base')
parser.add_argument('y',type=int,help='the 2nd base')
parser.add_argument('--myname',type=str,help='My Name')
args=parser.parse_args()
print('Myname:',args.myname)
print('given x:', args.x)
print('given y:', args.y)
multiplied=add(args.x,args.y)
print('x times y:', multiplie)
c:\users\user> python main.py --help
다음과 같이 positional arguments와 options이 출력된다.
usage: main.py [-h] [--myname MYNAME] x y
positional arguments:
x the 1st base
y the 2nd base
options:
-h, --help show this help message and exit
--myname MYNAME My Name
--myname옵션의 경우 MYNAME이라는 입력이 필요함을 알 수 있다.
c:\users\user> python main.py 3 4 --myname mike
Myname: mike
given x: 3
given y: 4
x times y: 7