gpt4 book ai didi

python - 将 argparse 上的空字符串替换为 None

转载 作者:行者123 更新时间:2023-11-28 20:56:08 25 4
gpt4 key购买 nike

我正在使用 groovy 调用 python 类,我将空参数默认为 None,但我发现很多问题也默认为 None null 或空字符串 ('')。

我希望 argparse 中会有一些东西来检查参数是否为 '' 并在这种情况下将其更改为 None 这样我就不必在代码中进一步检查 None 和 '' 只是检查是否 None

最佳答案

type ArgumentParser.add_argument() 的参数是一个“允许执行任何必要的类型检查和类型转换”的函数。你可以滥用它:

import argparse

def nullable_string(val):
if not val:
return None
return val

parser = argparse.ArgumentParser()
parser.add_argument('--foo', type=nullable_string)
print(parser.parse_args(['--foo', ''])

输出:

Namespace(foo=None)

关于python - 将 argparse 上的空字符串替换为 None,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55063560/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com