-
资料参考:argparse官方文档
-
解决参考:Stack Overflow
-
问题:
使用Spyder的默认控制台(IPython内核)以如下方式解析命令行参数时出现报错无法运行;
python xxx.py --mu 0.1 --gamma 0.2
- 代码示例:
import argparse
def args_parser():
parser = argparse.ArgumentParser()
# arguments for specific algorithms
parser.add_argument('--mu', type=float, default=0.01, help="value of mu")
parser.add_argument('--gamma', type=float, default=0.2, help="value of gamma")
args = parser.parse_args()
return args
args = args_parser()
'''
Run: python xxx.py --mu 0.1
'''
- 报错代码:
ValueError: need more than 1 value to unpack
- 解决方案:
1.若将argv传递给Spyder中的脚本,需要进入菜单(或 ctrl+F6):
Run > Configuration per file
在随后出现的对话框中,最后输入希望传递给脚本的命令行参数
2.直接在IPython Console中使用runfile运行代码即可:
runfile('xxx.py', args = '--mu 0.1')