python style question
传递一个压缩的对列表或两个必须长度一致的列表是否更好?
有两个列表,我必须断言他们的长度是一致的,但至少参数是命名的。
我问的是流行的风格。 有没有从主要图书馆中选择一个的例子? 例如,我猜matplotlib传入两个数组。
-
切勿使用assert进行参数验证。 它意味着用于调试。
-
我该怎么做参数验证?
-
在Python中,您应该不经常验证参数。 如果你真的需要,使用if并抛出一个适当的异常而不是AssertionError。
在我看来,这取决于例程的语义是否必须在调用者或被调用者中完成这些检查。
-
+1这与python无关,而且很大程度上取决于代码的用途。
如果您的函数无论如何都要有效地压缩列表,我可能更喜欢在调用者中压缩列表。 然后,如果列表的长度不同,则调用者可以决定该怎么做。 此外,如果您的对在逻辑上相关,那么调用者可能已经将数据作为对列表,并且必须首先解压缩它是不方便的。