Python 风格的问题

3

传入一对压缩列表还是长度必须相同的两个列表更好?

使用两个列表,我必须断言它们的长度相同,但至少参数有名称。

我正在询问主流风格。是否有选择一个而不是另一个的重要库的示例?例如,我猜测matplotlib传递了两个数组。


3
不要使用assert进行参数验证。它的作用是用于调试。 - Sven Marnach
我应该如何进行参数验证? - Neil G
2
在Python中,大多数情况下,您无需对参数进行任何验证。如果确实需要验证,应该使用if语句并抛出适当的异常,而不是使用AssertionError。请参考此链接:在Python3中如何正确处理异常 - Sven Marnach
2个回答

4

如果你的函数最终会有效地压缩这些列表,我可能更喜欢在调用者中将这些列表压缩。然后,调用者可以决定如果这些列表长度不同该怎么办。此外,如果你的配对逻辑相关,则调用者可能已经将数据作为配对列表存在,必须先解压缩数据将会很麻烦。


4
在我看来,这取决于例程的语义。无论这些检查是由调用方还是被调用方完成,都能实现预期的效果。

4
+1 这与 Python 无关,很大程度上取决于代码的目的。 - Bite code

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接