首页 Python 设置python中命名参数的默认设置

设置python中命名参数的默认设置

我有以下问题: 我必须通过API为特殊实体(点,线,面,体积,球体……)设置一些值到数据库中. 某些值对于每个实体都是唯一的,其他值始终是相同的. 所以我的想法是做一些事情(SetValues是我必须使用的东西放入数据库的API命令): def CreateLineEntity(ID,Name,Sol

我有以下问题:

我必须通过API为特殊实体(点,线,面,体积,球体……)设置一些值到数据库中.

某些值对于每个实体都是唯一的,其他值始终是相同的.
所以我的想法是做一些事情(SetValues是我必须使用的东西放入数据库的API命令):

def CreateLineEntity(ID,Name,Solver,P1,P2,Move='no',Perimeter=0.0,Gap='yes'): 
    SetValues(ID,{'Name':Name})
    SetValues(ID,{'P1':P1})
    SetValues(ID,{'P2':P2})
    SetValues(ID,{'Solver':Solver})
    SetValues(ID,{'Move':Move})
    SetValues(ID,{'Perim':Perimeter})
    SetValues(ID,{'Gap':Gap})
######################################################################
def CreatePointEntity(ID,{'Gap':Gap})

因此,在每个函数中,Move的默认值为“no”

如果由于某种原因默认更改我必须检查完整代码现在更改默认值.

是否有更智能的方法来定义此类默认值?
我的目标是只更改代码中的一个值,并且还更改函数中的所有默认值

解决方法

我通常会在所有这些项目中保留一个constants.py.

这里:

constant.py

MOVE = 'no'

yourFile.py

from constants import MOVE  # add as many constants as needed
def CreateLineEntity(ID,Move=MOVE,{'Gap':Gap})

在这种情况下,层次结构如下:

headFolder
    -constants.py
    -yourFile.py

本文来自网络,不代表云浮站长网立场。转载请注明出处: https://www.0766zz.com/html/kaifa/python/20200916/10360.html
上一篇
下一篇

作者: dawei

【声明】:云浮站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部