首页 > 解决方案 > 如何使用 argparse 获取图像输入并将其传递给函数?

问题描述

我正在尝试构建一个用于将图像转换为黑白的 cli 工具。如何将我的文件路径传递给函数并返回无彩色图像?到目前为止,这是我的样板代码。

import argparse
import PIL 
def main():
    def black_white(src):
        img = Image.open('%s'%(src))
        img = img.convert('1')
        img.save('result.png')
    parser = argparse.ArgumentParser(description= 'Image Decolouriser')
    parser.add_argument('-black_white','-bg', help= 'converts to no color !!')

    if args.black_white:
        black_white(args.black_white())


if __name__ == __main__:
    main()

标签: pythonpython-imaging-libraryargparse

解决方案


import argparse
def main():
    def black_white(src):
        img = Image.open('%s'%(src))
        img = img.convert('1')
        img.save('result.png')

    parser = argparse.ArgumentParser(description= 'Image Decolouriser')
    parser.add_argument('black_white', help= 'image to convert')
    args = parser.parse_args()

    black_white(args.black_white)

if __name__ == '__main__':
    main()

示例调用

my_prog image_path

推荐阅读