Python是否为分配给多行函数值的变量设置了正确的缩进?
设置为多行函数输出的变量的正确缩进是什么 我看到它被推到等号,像这样:Python是否为分配给多行函数值的变量设置了正确的缩进?,python,syntax,indentation,Python,Syntax,Indentation,设置为多行函数输出的变量的正确缩进是什么 我看到它被推到等号,像这样: dept_alias_valid = RegexValidator( '^(?!.*--)(?!.*__)(?!.*-_)(?!.*_-)([@]+[a-z][a-z\-_]+[a-z]+)$', "Alias must: start with @ and the remainder can contain only lowercase letters
dept_alias_valid = RegexValidator(
'^(?!.*--)(?!.*__)(?!.*-_)(?!.*_-)([@]+[a-z][a-z\-_]+[a-z]+)$',
"Alias must: start with @ and the remainder can contain only lowercase letters a-z _underscores -dashes with neither trailing nor back-to-back special characters and spaces are right out!"
)
dept_alias_valid = RegexValidator(
'^(?!.*--)(?!.*__)(?!.*-_)(?!.*_-)([@]+[a-z][a-z\-_]+[a-z]+)$',
"Alias must: start with @ and the remainder can contain only lowercase letters a-z _underscores -dashes with neither trailing nor back-to-back special characters and spaces are right out!"
)
我也看到过这样的情况:
dept_alias_valid = RegexValidator(
'^(?!.*--)(?!.*__)(?!.*-_)(?!.*_-)([@]+[a-z][a-z\-_]+[a-z]+)$',
"Alias must: start with @ and the remainder can contain only lowercase letters a-z _underscores -dashes with neither trailing nor back-to-back special characters and spaces are right out!"
)
dept_alias_valid = RegexValidator(
'^(?!.*--)(?!.*__)(?!.*-_)(?!.*_-)([@]+[a-z][a-z\-_]+[a-z]+)$',
"Alias must: start with @ and the remainder can contain only lowercase letters a-z _underscores -dashes with neither trailing nor back-to-back special characters and spaces are right out!"
)
这取决于你所说的“适当”是什么意思
就目前而言,这两种风格都是有效的 对 …但由于其他原因,你的两个例子都是无效的
第二个缩进2个空格,而第一个缩进19个空格,但是: 每个缩进级别使用4个空格 (不完全清楚“更多缩进”是否应该是一个固定数量的缩进级别,但我很确定这就是目的。) 然而,它也说: 4-空间规则对于连续行是可选的 当然,所有的PEP8都是可选的,尤其是对于不适用于stdlib的代码,但这显然是特别可选的
它们都超出了窗户的右边缘: 将所有行限制为最多79个字符 对于结构限制较少的长文本块(docstring或comments),行长度应限制为72个字符
第一个将结束价放在错误的位置: 多行结构上的右大括号/方括号/圆括号可以在列表最后一行的第一个非空白字符下对齐,如下所示: …也可以在开始多行构造的行的第一个字符下对齐,如中所示: 你的第二个例子第二个版本是正确的;您的第一个示例的第一个版本是错误的
但是,第二种样式(正确地固定为使用4-空格缩进)有一个明显的优点:将其拆分为多行的全部原因是为了更容易将文本放入窗口(即使您没有成功)。第一种样式每行额外浪费14个字符,因此效果较小
还值得注意的是,和其他自动代码格式化程序会将您的第一个示例更改为第二个示例(同样,除非有4个空格的缩进)。取决于您所说的“正确”的含义
就目前而言,这两种风格都是有效的 对 …但由于其他原因,你的两个例子都是无效的
第二个缩进2个空格,而第一个缩进19个空格,但是: 每个缩进级别使用4个空格 (不完全清楚“更多缩进”是否应该是一个固定数量的缩进级别,但我很确定这就是目的。) 然而,它也说: 4-空间规则对于连续行是可选的 当然,所有的PEP8都是可选的,尤其是对于不适用于stdlib的代码,但这显然是特别可选的
它们都超出了窗户的右边缘: 将所有行限制为最多79个字符 对于结构限制较少的长文本块(docstring或comments),行长度应限制为72个字符
第一个将结束价放在错误的位置: 多行结构上的右大括号/方括号/圆括号可以在列表最后一行的第一个非空白字符下对齐,如下所示: …也可以在开始多行构造的行的第一个字符下对齐,如中所示: 你的第二个例子第二个版本是正确的;您的第一个示例的第一个版本是错误的
但是,第二种样式(正确地固定为使用4-空格缩进)有一个明显的优点:将其拆分为多行的全部原因是为了更容易将文本放入窗口(即使您没有成功)。第一种样式每行额外浪费14个字符,因此效果较小
还值得注意的是,和其他自动代码格式化程序会将第一个示例更改为第二个示例(同样,除非使用4个空格的缩进)。PEP8:嗯,您需要的是四个空格,而不是两个。但除此之外,第二个通常更好。毕竟,你把它分成多行的原因是为了每行有更多的空间,所以你不必超过72/79/99个字符,那么为什么还要浪费每行额外的14个字符呢?PEP8:嗯,你想要四个空格,而不是两个。但除此之外,第二个通常更好。毕竟,你把它分成多行的原因是为了每行有更多的空间,所以你不必超过72/79/99个字符,那么为什么还要浪费每行额外的14个字符呢?谢谢分享黑色。我想知道如何将我所有的代码压缩到4个空格。@HashRocketSyntax你要么喜欢黑色,要么讨厌黑色。如果您讨厌它,请尝试yapf,它是一个可配置的格式化程序,而不是doit-my-way或else。(但是如果你能习惯这样的想法,当黑色使你的代码变得丑陋时,这意味着你必须重新组织你的代码,我更喜欢它。特别是在一个团队中,每个人都希望以不同的方式配置yapf…)感谢分享黑色。我想知道如何将我所有的代码压缩到4个空格。@HashRocketSyntax你要么喜欢黑色,要么讨厌黑色。如果您讨厌它,请尝试yapf,它是一个可配置的格式化程序,而不是doit-my-way或else。(但是如果你能习惯这样一种想法,即当黑色使你的代码变得丑陋时,这意味着你必须重新组织你的代码,我更喜欢它。特别是在一个团队中,每个人都希望以不同的方式配置yapf…)
my_list = [
1, 2, 3,
4, 5, 6,
]