Python布尔方法命名约定

时间:2017-12-27 17:38:08

标签: python naming-conventions

我是Rubyist学习Python,我想知道Python中是否存在以下几种约定。

在Ruby中,返回布尔值的方法应始终以?结尾。例如,

def palindrome?(string)
  # some code that tests whether string is a palindrome
end

我能找到的唯一existing SO question发言并没有提供明确的答案。

3 个答案:

答案 0 :(得分:7)

我同意@CarolChen关于转向PEP8(Python样式指南)的原则以获得指导。然而,我会建议在必要时提高可读性"是在旁观者的眼中。例如,这些函数中的每一个都在Python中用作str对象的函数或内置函数。这些都是Python生态系统中的基础,并且是一个使用样式的好例子,专注于返回布尔状态并具有易于读取的函数名称。

<强> STR。方法

isalnum()
isalpha()
isdecimal()
isdigit()
isidentifier()
islower()
isnumeric()
isprintable()
isspace()
istitle()
isupper()

内置功能:

isinstance()
issubclass()

答案 1 :(得分:5)

没有特定于布尔返回方法的标准命名约定。但是,PEP8的命名功能确实有a guide

  

函数名称应为小写,单词分隔   必要时强调提高可读性。

通常,人们使用is(例如is_palindrome)启动一个函数来描述返回的布尔值。

答案 2 :(得分:1)

您可以将其定义为

def is_palindrome(variable):
    # your logic\
    # return True / False