文章目录
前言
如何规范传参呢?我们经常会遇到给函数传参,因为顺序不对,导致参数传错位置的情况。python提供了新的传参方法,即在传参的时候,可以指定要传给哪个参数。那么显然这种方法更可靠和高效。那怎么才能规范开发人员严格按照这种方式传参呢?我们可以参考langchain-chatchat的方法
一、langchain-chatchat里的案例
看下面的代码,红框扩起来的 * 有什么作用呢?

二、做一个实验
1.我们仿照它写一个类
代码如下:
class Abc:
def __init__(self, *, a: str = None, b: str = None):
self.a = a
self.b = b
def test(self):
print(self.a)
print(self.b)
if __name__ == "__main__":
t = Abc(a="a", b="b")
t.test()
运行后,可以看到结果
2.修改代码
我们可以看到传参的时候,如果不指定参数名是无法传参的,会报错。
总结
规范之后,我们可以看到这种方式传参有很多好处,除了上面说的不会传错位置以外,我们还可以在不查看函数定义的情况下,清楚的知道传的参数都是做什么的。看下面的代码,是不是清晰易读的多呢?