python-3.x - 限制 argparse add_argument 中的输入字符串长度
问题描述
我想添加一个字符串类型的参数,但将字符串的长度限制为 1。
group.add_argument(
"--test_param",
dest="test_param",
type=str,
required=True,
default=None,
)
有什么办法可以在这里做到,而不必len(test_param)
稍后检查引发错误?
解决方案
您可以尝试lambda
在type
前任:
import argparse
group = argparse.ArgumentParser(description='Data.')
group.add_argument(
"--test_param",
dest="test_param",
type=lambda x: x if x.isalpha() and len(x) <=1 else False, #Sample Function
required=True,
default=None,
)
args = group.parse_args()
value = getattr(args, 'test_param')
if value:
print(value)
else:
print("error!!!")
输出:
python sample.py --test_param fddd #->>error!!
python sample.py --test_param f #->>f
推荐阅读
- sql - 查询在 ssms 中有效,但在 ssrs 中无效
- ruby-on-rails - 在 ruby on rails 中将 sqlite 更改为 PostgreSQL
- python - 使用 Python 的 PI 上的 Modbus 可以工作,但只有空结果
- sql - Oracle SQL:如何在 FORALL LOOP 中添加 IF 条件
- python - 根据 pandas 中的时间戳创建交互会话
- sql - SSDT 在比较和发布中跳过 NOCHECK 约束
- assembly - 具有 32 个地址位和 16 个数据位的存储器的容量为?
- r - 如何将列表类变量更改为r中的字符串
- go - 返回 Golang 中 strings.Split() 切片的最后一项
- jupyter-notebook - Jupyter:我如何回忆和编辑以前的“In:”文本?