标签: pep8

将Python代码转换为符合PEP8的工具

我知道有一些工具可以验证你的Python代码是否符合PEP8,例如,有一个在线服务一个python模块.

但是,我找不到可以我的Python文件转换为自包含的PEP8有效Python文件的服务或模块.有谁知道有没有?
我认为这是可行的,因为PEP8完全是关于代码的外观,对吗?

python coding-style pep8

104
推荐指数
5
解决办法
6万
查看次数

python中列表推导或生成器表达式的行继续

你怎么打破一个很长的列表理解?

[something_that_is_pretty_long for something_that_is_pretty_long in somethings_that_are_pretty_long]
Run Code Online (Sandbox Code Playgroud)

我也看到过某些人不喜欢使用'\'来分解线条,但却从不理解为什么.这背后的原因是什么?

python coding-style list-comprehension pep8

98
推荐指数
3
解决办法
3万
查看次数

链式方法在Python中调用缩进样式

从阅读PEP-8开始,我得知你应该将右括号放在与函数调用中最后一个参数相同的行上:

ShortName.objects.distinct().filter(
    product__photo__stockitem__isnull=False)
Run Code Online (Sandbox Code Playgroud)

也许,长表达最好避免.但是,如果这是不受欢迎的,你将如何进行多个链式方法调用?闭幕式是否应该换新线?

ShortName.objects.distinct().filter(
    product__photo__stockitem__isnull=False
).values_list('value', flat=True)
Run Code Online (Sandbox Code Playgroud)

那些无参数方法呢?如何在不引用中间返回值的情况下在多行上编写它们?

ShortName.objects.distinct(
    ).filter().values() # looks ugly
Run Code Online (Sandbox Code Playgroud)

更新:如何在Python中打破一系列链式方法有一个重复的问题.该接受的答案建议开始以点每个新线的熟悉从jQuery的风格.作者没有提供任何理由或权威参考,所以我想得到关于这种风格或替代方案的确认.

python django coding-style pep8

95
推荐指数
2
解决办法
4万
查看次数

PEP 8,为什么关键字参数中的'='周围没有空格或默认参数值?

为什么PEP 8建议=在关键字参数或默认参数值中没有空格

这与=Python代码中每隔一次出现的推荐空格不一致吗?

怎么:

func(1, 2, very_long_variable_name=another_very_long_variable_name)
Run Code Online (Sandbox Code Playgroud)

优于:

func(1, 2, very_long_variable_name = another_very_long_variable_name)
Run Code Online (Sandbox Code Playgroud)

任何由Python的BDFL讨论/解释的链接都将受到赞赏.

记住,这个问题更多的是关于kwargs而不是默认值,我只是使用了PEP 8中的措辞.

我不是在征求意见.我在问这个决定背后的原因.这更像是问我为什么要在C程序中使用{if语句相同的行,而不是我是否应该使用它.

python coding-style pep8

95
推荐指数
7
解决办法
3万
查看次数

如何在Eclipse中集成pep8.py?

一点背景:

  • PEP 8Python代码样式指南.它包含所有python程序员应遵循的约定.
  • 根据PEP 8,pep8.py是一个(非常有用的)脚本,用于检查给定python脚本的代码格式.
  • Eclipse是一个很棒的IDE.使用Pydev扩展,它可以用于开发Python

我在编写脚本时手动运行pep8.py,但是对于更大的项目,我更喜欢使用Eclipse.在Eclipse/Pydev中集成pep8.py非常有用,因此它可以在项目的所有文件中自动运行,并指向包含警告的行.也许有一种明显的方法可以做到,但我还没有找到它.

问题是:如何在Eclipse中集成pep8.py?

python eclipse pep8 pydev

90
推荐指数
5
解决办法
3万
查看次数

我应该总是在`except`语句中指定一个异常类型吗?

使用PyCharm IDE时,except:无异常类型的使用会触发IDE提醒此异常子句Too broad.

我应该忽略这个建议吗?或者是Pythonic总是具体的异常类型?

python exception pep8

86
推荐指数
4
解决办法
7万
查看次数

导入订单编码标准

PEP8表明:

应按以下顺序对导入进行分组:

  1. 标准库导入
  2. 相关的第三方进口
  3. 本地应用程序/库特定导入

您应该在每组导入之间添加一个空行.

有没有一种方法来检查,如果该标准在使用静态代码分析工具包违反任何地方,比如pylint,pyflakes,pychecker,pep8


违规示例:

from my_package import my_module
from django.db import models
import os
Run Code Online (Sandbox Code Playgroud)

正确的导入方式:

import os

from django.db import models

from my_package import my_module
Run Code Online (Sandbox Code Playgroud)

python static-analysis pep8 python-import

78
推荐指数
4
解决办法
3万
查看次数

我应该如何在python注释中格式化长URL并且仍然符合PEP8

在块注释中,我想引用一个超过80个字符的URL.

显示此URL的首选约定是什么?

我知道bit.ly是一个选项,但URL本身是描述性的.缩短它然后有一个描述缩短的URL的嵌套注释似乎是一个糟糕的解决方案.

python pep8

71
推荐指数
5
解决办法
1万
查看次数

Python:使用4个空格进行缩进.为什么?

在编写python时,我只使用2个空格来缩进,确定PEP-8确实建议有4个空格,但从历史上看,这是不寻常的.

那么,任何人都可以说服我使用4个空格而不是2个空格吗?有什么优点和缺点?

PS最后,将所有现有代码库从2个空间转换为4个空格的简单方法是什么?


PPS PEP-8还建议不要使用标签进行缩进.在这里阅读


所以,总结一下:

优点:

  • 包裹超过80行的字符串时有更多的空间来安排.
  • 可以从代码片段中复制代码,它只是起作用.

缺点:

  • 使用更深层次的嵌套语句,您可以减少实际代码的空间.

谢谢.

python conventions pep8 indentation

69
推荐指数
9
解决办法
6万
查看次数

如何禁用特定文件中的pep8错误?

我试过了

#:PEP8 -E223
Run Code Online (Sandbox Code Playgroud)

要么

# pep8: disable=E223
Run Code Online (Sandbox Code Playgroud)

我认为第二个会起作用,但似乎不起作用.

你知道我怎么能处理这个吗?

python pep8

62
推荐指数
4
解决办法
5万
查看次数