python - Python3 用 **kwargs 更新 locals() dict 坏主意?
问题描述
只是想知道这是否是一个不好的约定(我假设是这种情况):
def foo(*args, **kwargs):
locals().update(kwargs)
try:
print(args, kwargs, a)
except NameError:
print('"a" is not defined')
为什么要这样做?
假设您有一个dict
用作配置的 python。这个配置可能很长,作为一个懒惰的程序员,你不希望有一个巨大的def
声明来命名kwargs
,你也不一定总是想kwargs["my_var"]
在函数里面写或def
写my_var = kwargs["my_var"]
。
我再次认为这不是处理它的最佳方法。我只是好奇是否可能有另一种解决方案。
解决方案
推荐阅读
- c# - 找不到我的 xml 文件的路径
- julia - Julia:如何查看去向量化的代码?
- javascript - 如何围绕现有的 Javascript 库创建 Angular 包装器?
- javascript - 使用一段深度对象键作为局部变量
- docker - 以编程方式检查 Docker 容器进程是否以非零状态结束
- java - 修改流阅读器类以从文件而不是 System.in 中读取
- ios - Swift为视图背景绘制弧线
- mysql - 基于一列数据合并MySQL中的2个表
- javascript - 为 clappr 播放器创建暂停链接
- c++ - 有没有办法同时为 C++ 中的多个模板分配一个类型?