1.Jupyter Notebook下使用argparse报错ipykernel_launcher.py: error: unrecognized arguments: -f
解决方法:args = parser.parse_args()改为args = parser.parse_args(args=[])即可
2.argparse科普文:
python之parser.add_argument()用法——命令行选项、参数和子命令解析器
之前对action='store_true'不是很了解,科普后好明白,另外-h是就有提示了 temp.py [-h] [--sparse] [--seed SEED] [--epochs EPOCHS],–sparse后面不需要接参数,接了反而出错。
3.用yes', 'true', 't', 'y', '1'等表示True
参考https://github.com/shinseung428/GlobalLocalImageCompletion_TF/blob/master/config.py
import argparse
def str2bool(v):
if v.lower() in ('yes', 'true', 't', 'y', '1'):
return True
elif v.lower() in ('no', 'false', 'f', 'n', '0'):
return False
else:
raise argparse.ArgumentTypeError('Boolean value expected.')
parser = argparse.ArgumentParser(description='')
parser.add_argument('--continue_training', dest='continue_training', default=False, type=str2bool, help='flag to continue training')
args = parser.parse_args()
print(args.continue_training)
随后可自行尝试下列结果。
python temp.py --continue_training t
python temp.py --continue_training 1
本文介绍如何解决在JupyterNotebook环境下使用argparse时出现的错误,并提供了一个简单的解决办法。此外还介绍了argparse的基本用法,包括如何处理布尔类型的参数。
1137

被折叠的 条评论
为什么被折叠?



