728x90
Argparse를 이용하여 원기둥 넓이 구하는 프로그램 만들기
이름을 원하는대로 짓고 해당 파이썬 파일을 만든다. (저는 Study_Argparse라고 지었습니다.)
import math
import argparse
parse = argparse.ArgumentParser(description='Calculate volume of a Cylinder!')
parse.add_argument('-r','--radius',type=int, metavar='', help='원기둥의 반지름')
parse.add_argument('-H','--height',type=int, metavar='', help='원기둥의 높이')
args = parse.parse_args()
def cylinder_volume(radius,heigth):
vol = (math.pi) * (radius**2) * (heigth)
return vol
if __name__ == '__main__':
print(cylinder_volume(args.radius,args.height))
그리고 만든 파일 위치에서 우클릭해서 터미널에서 열기 또는 cmd에서 주소를 입력해서 들어가 준다.
그리고 밑의 명령어를 입력해준단다 python .py이름 -r(원기둥의 반지름) -H(원기둥의 높이)
필자는 C:\Users\이름\Desktop\VSCode\PythonStudy_22_09 위치에 Study_ArgParse 라는 이름으로 파이썬 파일을 만들어 주었다.
parse.add_argument에 써뒀던 help 보는법 python .py이름 --help
More 예제
반지름 값을 출력할 때 반지름과 높이도 함께 또는 값만 출력하는 등 다양한 옵션을 주고 싶을 때
더보기
import math
import argparse
parse = argparse.ArgumentParser(description='Calculate volume of a Cylinder!')
parse.add_argument('-r','--radius',type=int, metavar='', help='원기둥의 반지름')
parse.add_argument('-H','--height',type=int, metavar='', help='원기둥의 높이')
#args = parse.parse_args()
group = parse.add_mutually_exclusive_group()
group.add_argument('-q','--quiet',action='store_true', help='결과값만 출력')
group.add_argument('-v','--verbose',action='store_true',help='자세하게 출력')
args = parse.parse_args()
def cylinder_volume(radius,heigth):
vol = (math.pi) * (radius**2) * (heigth)
return vol
if __name__ == '__main__':
volume = cylinder_volume(args.radius, args.height)
if args.quiet:
print(volume)
elif args.verbose:
print("원기둥의 반지름:%s 높이:%s 를 곱한 값은 %s입니다." % (args.radius, args.height, volume))
else:
print("Volume of Cylinder = %s" % volume)
더보기 아래 둘다 동일하게 작동함
import math
import argparse
parse = argparse.ArgumentParser(description='Calculate volume of a Cylinder!')
parse.add_argument('-r','--radius',type=int, metavar='', help='원기둥의 반지름')
parse.add_argument('-H','--height',type=int, metavar='', help='원기둥의 높이')
#args = parse.parse_args()
#group = parse.add_mutually_exclusive_group()
parse.add_argument('-q','--quiet',action='store_true', help='결과값만 출력')
parse.add_argument('-v','--verbose',action='store_true',help='자세하게 출력')
args = parse.parse_args()
def cylinder_volume(radius,heigth):
vol = (math.pi) * (radius**2) * (heigth)
return vol
if __name__ == '__main__':
volume = cylinder_volume(args.radius, args.height)
if args.quiet:
print(volume)
elif args.verbose:
print("원기둥의 반지름:%s 높이:%s 를 곱한 값은 %s입니다." % (args.radius, args.height, volume))
else:
print("Volume of Cylinder = %s" % volume)
뒤에다가 -q, -v 혹은 아무것도 안넣으면 else문이 실행된다.
참고한 유튜브 영상
https://www.youtube.com/watch?v=cdblJqEUDNo
더보기
동영상 보고 따라했는데 뭔소린지 몰라서 적어보면서 한다.
'연구 > 파이썬' 카테고리의 다른 글
Pycharm에 conda 가상환경 적용법 (0) | 2024.03.11 |
---|