我有一个这样的“规范文件结构”(我给出了合理的名称以方便阅读):mainpack/__main__.py__init__.py-helpers/__init__.pypath.py-network/__init__.pyclientlib.pyserver.py-gui/__init__.pymainwindow.pycontrollers.py在这种结构中,例如每个包中包含的模块可能希望通过以下相对导入来访问helpers实用程序:#network/clientlib.pyfrom..helpers.pathimportcreate_dir程序以这种方式使用__main__.py文件
这只是出于历史目的的好奇:我想知道是否有人知道为什么使用非常广泛(和核心模块)logging不遵循Python的PEP-8namingconvention.例如,在>>>importlogging>>>log=logging.getLogger("hello")我希望它是get_logger,但它不是。说到functionnames,PEP8标准说:mixedCaseisallowedonlyincontextswherethat'salreadytheprevailingstyle(e.g.threading.py),toretainbackwardscompatibility.是这
这只是出于历史目的的好奇:我想知道是否有人知道为什么使用非常广泛(和核心模块)logging不遵循Python的PEP-8namingconvention.例如,在>>>importlogging>>>log=logging.getLogger("hello")我希望它是get_logger,但它不是。说到functionnames,PEP8标准说:mixedCaseisallowedonlyincontextswherethat'salreadytheprevailingstyle(e.g.threading.py),toretainbackwardscompatibility.是这
我开始在一些项目中使用PyQt,但我遇到了文体困境。PyQt的函数使用驼峰式大小写,但我更喜欢遵循的PEP8说函数名称使用下划线和全部小写。因此,一方面,我可以继续遵循PEP8,这意味着我的代码将对驼峰式大小写和下划线函数进行混合函数调用,甚至我的类也会有混合函数名,因为我需要重载mousePressEvent之类的函数。或者,我可以打破PEP8并以一致性的名义对我所有的函数名采用驼峰式大小写。我意识到这是主观的,这正是我个人更喜欢的,但我喜欢听听其他人关于他们的工作以及他们为什么选择这样做的原因。 最佳答案 在你看来,我不会反对你
我开始在一些项目中使用PyQt,但我遇到了文体困境。PyQt的函数使用驼峰式大小写,但我更喜欢遵循的PEP8说函数名称使用下划线和全部小写。因此,一方面,我可以继续遵循PEP8,这意味着我的代码将对驼峰式大小写和下划线函数进行混合函数调用,甚至我的类也会有混合函数名,因为我需要重载mousePressEvent之类的函数。或者,我可以打破PEP8并以一致性的名义对我所有的函数名采用驼峰式大小写。我意识到这是主观的,这正是我个人更喜欢的,但我喜欢听听其他人关于他们的工作以及他们为什么选择这样做的原因。 最佳答案 在你看来,我不会反对你
如何格式化符合PEP8的长断言语句?请忽略我的例子的人为性质。defafunc(some_param_name):assertisinstance(some_param_name,SomeClassName),'some_param_namemustbeaninstanceofSomeClassName,sillygoose!'不能用括号括起来,因为这会改变assert语句的行为,因为它是关键字,而不是内置函数。 最佳答案 请务必记住,PEP8只是一个指南,evenstatesthattherearetimeswhentherule
如何格式化符合PEP8的长断言语句?请忽略我的例子的人为性质。defafunc(some_param_name):assertisinstance(some_param_name,SomeClassName),'some_param_namemustbeaninstanceofSomeClassName,sillygoose!'不能用括号括起来,因为这会改变assert语句的行为,因为它是关键字,而不是内置函数。 最佳答案 请务必记住,PEP8只是一个指南,evenstatesthattherearetimeswhentherule
关闭。这个问题是opinion-based.它目前不接受答案。想改善这个问题吗?更新问题,以便可以通过editingthispost用事实和引文回答问题.5年前关闭。Improvethisquestion多年来,我写的Python越多,我就越发现自己同意大多数指导方针,尽管我出于自己的原因一直故意打破一些。我很想知道PEP8(或其他PEP也可能)中人们虔诚地坚持的内容和原因,以及人们认为不方便或不足的地方。就我而言(以及一般的工作),我们偏离的只有少数几件事:下划线分隔的小写名称,我可以看到它的重点,因为它会始终保持一致,但是我们倾向于使用lowerCamelCase,即使它偶尔会引入
关闭。这个问题是opinion-based.它目前不接受答案。想改善这个问题吗?更新问题,以便可以通过editingthispost用事实和引文回答问题.5年前关闭。Improvethisquestion多年来,我写的Python越多,我就越发现自己同意大多数指导方针,尽管我出于自己的原因一直故意打破一些。我很想知道PEP8(或其他PEP也可能)中人们虔诚地坚持的内容和原因,以及人们认为不方便或不足的地方。就我而言(以及一般的工作),我们偏离的只有少数几件事:下划线分隔的小写名称,我可以看到它的重点,因为它会始终保持一致,但是我们倾向于使用lowerCamelCase,即使它偶尔会引入
我试过了#:PEP8-E223或#pep8:disable=E223我认为第二个会起作用,但似乎不起作用。您知道我该如何处理吗? 最佳答案 据我所知,你不能。您可以在用户范围内或每个项目中禁用错误或警告。见thedocumentation.相反,您可以在行尾使用#noqa注释来跳过该特定行(参见patch136)。当然,这会跳过所有PEP8错误。主要作者反对sourcefilenoise,所以他们建议不要包含#pep8注释。注意还有nopep8,它是等价的。noqa(代表NoQualityAssurance添加了inversio