换行下的缩进



我开始编程和使用Pycharm。我采用 79 行作为最大行长。但是现在我不知道是否使用额外的制表符来缩进下一行,因为上一行已经在第一行下缩进了。这说明了我的意思:

我可以使用这个:

if len(word) % 2 == 1:
cent = len(word) // 2
if (word[cent] == 'a' or word[cent] == 'e' or word[cent] == 'i'
or word[cent] == 'o' or word[cent] == 'u'):
print('The word's center is a lowercase vowel')

或者这个:

if len(word) % 2 == 1:
cent = len(word) // 2
if (word[cent] == 'a' or word[cent] == 'e' or word[cent] == 'i'
or word[cent] == 'o' or word[cent] == 'u'):
print('The word's center is a lowercase vowel')

无论哪种方式都奏效了。

那么,这些情况是否有约定。 提前感谢大家! 祝你有美好的一天:)

根据 PEP8 https://www.python.org/dev/peps/pep-0008/#maximum-line-length:

换行的首选方法是在括号、括号和大括号内使用 Python 的隐含行延续。通过将表达式括在括号中,可以将长行分隔为多行。这些应优先使用,而不是使用反斜杠进行行连续。

至于后续行的缩进,包括更多缩进以将其与其他行区分开来:

https://www.python.org/dev/peps/pep-0008/#indentation

代码将如下所示:

if len(word) % 2 == 1:
cent = len(word) // 2
if (word[cent] == 'a' or word[cent] == 'e' or word[cent] == 'i'
or word[cent] == 'o' or word[cent] == 'u'):
print("The word's center is a lowercase vowel")

您可以使用作为一行中的最后一个字符来表示"此行在下一行继续" - 这有助于"正常"Python代码无法被破坏(不是您的情况(。

您的示例更适合

vowels = set("aeiou") # maybe faster then list-lookup if used several times
if word[cent] in vowels:

或由

if word[cent] in "aeiou":

或由

def isVowel(ch):
return ch in "aeiou"
if isVowel(word[cent]):

PEP-8 最大行长说明如何"正确格式化"。

相关内容

  • 没有找到相关文章

最新更新