python之argparse模块常见用法包含实例(超详细)

本文从一个计算圆柱体体积的实例出发,帮助大家理解关于argparse模块的一些常见用法。argparse模块是命令行选项、参数和子命令解析器。可以让人轻松编写用户友好的命令行接口。适用于代码需要频繁地修改参数的情况。
先看下面一段没有使用argparse的代码

import math  # 为了获取π
def cylinder_volume(radius, height):
    vol = (math.pi) * (radius**2) * (height)  # 体积公式
    return vol
if __name__ == '__main__':
    print(cylinder_volume(1, 3))

由以上可知,如果要计算其它圆柱体的体积,还需要在代码中修改半径和高度的参数。如果代码的规模很大,修改参数的过程会困难,不妨将这些需要频繁修改的参数放到代码外部,在命令行运行程序的时候一起输入,就用到了argparse模块。以下为修改后的代码

import math
import argparse  # 导入argparse模块

# 用来装载参数的容器
parser = argparse.ArgumentParser(description='Calculate volume of a cylinder')
# 给这个解析对象添加命令行参数
parser.add_argument('radius', type=int, help='Radius of cylinder')
parser.add_argument('height', type=int, help='Height of cylinder')
args = parser.parse_args()  # 获取所有参数


def cylinder_volume(radius, height):
    return math.pi * (radius ** 2) * height


if __name__ == '__main__':
    print(cylinder_volume(args.radius, args.height))

你可能感兴趣的:(python,开发语言)