我的脚本有问题。我想用参数(--color BLUE
)打开我的程序。
颜色定义如下:
BLUE = bytearray(b'\x00\x00\xff')
解析器如下所示:
common_parser.add_argument('--color', dest='color', action='store', required=False, default=BLUE, help='set the color')
当我现在使用参数--color YELLOW
启动脚本时,它只读取" Y"和它一起工作。它没有指向bytearray。我怎样才能正确传递?
答案 0 :(得分:2)
定义颜色及其对应对象的字典:
COLORS = {
'BLUE': bytearray(b'\x00\x00\xff'),
'GREEN': bytearray(b'\x00\xff\x00'),
'RED': bytearray(b'\xff\x00\x00')
}
将add_argument
来电更改为:
common_parser.add_argument('--color', dest='color', required=False, default="BLUE", help='set the color')
现在您可以使用参数按键查找颜色(两者都是字符串):
color = COLORS[args.color]
args
是来自argparse
的解析命令行参数。