通过argparse将bash变量数组读入python

问题描述 投票:0回答:1

我正在尝试使用argparse从bash脚本中读取值列表。但是,它似乎只读取1个值而不是列表。

例如,在train.py中

parser = argparse.ArgumentParser(description='PyTorch ImageNet Training')
parser.add_argument('--lr', '--learning-rate', default=[0.1], type=float, nargs='+',
                        metavar='LR', help='initial learning rate', dest='lr')
args=parser.parse_args()

我的bash脚本如下:

LR="1e-1 1e-2 1e-3 1e-4 1e-5 1e-6"
python train.py --lr=$LR

在train.py中,print(args.lr)仅输出1e-3。通过argparse读取值列表的正确方法是什么?

python-3.x bash
1个回答
0
投票

尝试如下从参数中删除=

python train.py --lr $LR

这将使--lr$LR中的每个值成为python脚本的单独参数。

© www.soinside.com 2019 - 2024. All rights reserved.