为什么PEP 8 recommend not having spaces around ^{
这是否与Python代码中每次出现=
时建议的空格不一致?
怎么样:
func(1, 2, very_long_variable_name=another_very_long_variable_name)
比:
func(1, 2, very_long_variable_name = another_very_long_variable_name)
如果您有任何关于Python的BDFL讨论/解释的链接,我们将不胜感激。
注意,这个问题更多的是关于kwargs而不是默认值,我只是使用了PEP 8中的短语。
我不是在征求意见。我在问这个决定背后的原因。这更像是问我为什么要在C程序中的{
语句的同一行上使用if
,而不是问我是否应该使用它。
IMO省去了args的空间,为arg/值对提供了更清晰的可视分组;它看起来不那么杂乱无章。
我不会使用非常长的变量名作为默认参数。所以考虑一下:
关于这个:
另外,使用变量作为默认值也没有多大意义。也许有些常量变量(不是真正的常量),在这种情况下,我会使用全大写的名称,尽可能简短。所以没有其他的。。。
我想这是因为关键字参数和变量赋值本质上是不同的。
例如,有很多这样的代码:
如您所见,将一个变量赋给一个名为完全相同的关键字参数是完全有意义的,因此它提高了在没有空格的情况下查看它们的可读性。更容易识别的是,我们使用的是关键字参数,而不是给变量本身赋值。
此外,参数往往在同一行中,而赋值通常在各自的行中,因此节省空间可能是一个重要的问题。
相关问题 更多 >
编程相关推荐