[파이썬] argparse 별칭(alias)을 사용한 인수 설정

Command-line interfaces (CLIs) are a popular way to pass arguments to a program. The argparse module in Python provides a convenient way to define and parse command-line arguments. In addition to the default argument names, argparse also allows us to assign aliases or alternate names to arguments. This can be particularly useful when we want to provide multiple ways for users to specify the same argument.

Let’s see how we can use aliases for argument settings using argparse in Python.

Setting up the Argument Parser

To start, we need to import the argparse module and create an instance of the ArgumentParser class.

import argparse

parser = argparse.ArgumentParser(description='Example argument parser')

Defining Arguments with Aliases

Next, we can define our command-line arguments along with their respective aliases. To assign an alias to an argument, we can provide a list of strings as the dest parameter in the add_argument() method. Each string in the list represents a possible alias for the argument.

parser.add_argument('-f', '--file', dest='filename', help='Input file')
parser.add_argument('-o', '--output', dest='output_dir', help='Output directory')

In the above example, we have defined two arguments: -f or --file and -o or --output. Both arguments have aliases associated with them. The dest parameter is used to specify the name of the attribute to store the argument value.

Parsing the Command-line Arguments

After defining the arguments, we can parse the command-line arguments using the parse_args() method of the argument parser.

args = parser.parse_args()

The args object now contains the parsed values for each argument. We can access these values using the attribute names we specified in the dest parameter.

input_file = args.filename
output_directory = args.output_dir

Using the Aliases

Now that we have parsed the command-line arguments, we can use the assigned aliases to specify the arguments when running our script.

python script.py -f input.txt -o output_folder

In the above example, we use the -f alias to provide the input file and -o alias to specify the output folder.

By using aliases, we provide flexibility and convenience to the users of our script, allowing them to choose between different argument names without affecting the actual functionality.

Conclusion

In this blog post, we have learned how to use aliases for argument settings using the argparse module in Python. Aliases allow us to provide alternate names for command-line arguments, giving users flexibility and convenience when interacting with our program. Incorporating aliases in our command-line interfaces can enhance the overall user experience and make our programs more user-friendly.