草庐IT

python - pep-8 "Limit all lines to a maximum of 79 characters."的有效性如何

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。This在25英寸显示器中似乎是过去的遗物。我正在寻找stackoverflow成员对此的看法,您是否总是尊重这个建议。

python - 如何从 setup.py 中抑制 PEP440Warning?

我正在运行pythonsetup.py或python3setup.py,它为我提供了PEP440Warning的不相关包,我不会去修复:/usr/lib/python3/dist-packages/pkg_resources/__init__.py:2512:PEP440Warning:'python-apt(0.9.3.11build1)'isbeingparsedasalegacy,nonPEP440,version.Youmayfindoddbehaviorandsortorder.Inparticularitwillbesortedaslessthan0.0.Itisrecom

python - pip3 setup.py install_requires PEP 508 私有(private)仓库的 git URL

我正在尝试运行:pip3install-e.在我的Python项目中,我有以下setup.py:fromsetuptoolsimportsetupsetup(name='mypackage',install_requires=["anotherpackage@git+git@bitbucket.org:myorg/anotherpackage.git"])但它失败了:errorinmypackagesetupcommand:'install_requires'mustbeastringorlistofstringscontainingvalidproject/versionrequir

python - docstring max line-length 是否与正常的 PEP8 标准不同?

所以我查看了一些代码,并在pylint的帮助下将其提升到PEP8标准,我注意到如果我在打印语句中使用三引号,其中文本超过120个字符(我们允许120而不是79)pylint没有提示。这是pylint中的一个错误吗?三重引号中的字符串,因为您可能希望以这种方式格式化它们?为清楚起见:是的,pylint在所有其他超过行长度的情况下正常工作。 最佳答案 经常使用pylint,我也注意到了这种不一致。在MaximumLineLengthsectionofPEP8,它说:Therefore,pleaselimitalllinestoamaxi

python - 如何处理长路径名以符合 pep8 要求?

为了符合pep8,我将如何处理如下所示的长路径名称?即使变得有些不可读,是否必须每行79个字符?defsetUp(self):self.patcher1=patch('projectname.common.credential.CredentialCache.mymethodname') 最佳答案 有多种方法可以做到这一点:用一个变量来存储这个defsetUp(self):path='projectname.common.credential.CredentialCache.mymethodname'self.patcher1=pa

python - 与 bool numpy 数组 VS PEP8 E712 的比较

PEP8E712要求“与True的比较应该是ifcondisTrue:或ifcond:”。但如果我遵循此PEP8,我会得到不同/错误的结果。为什么?In[1]:frompylabimport*In[2]:a=array([True,True,False])In[3]:where(a==True)Out[3]:(array([0,1]),)#correctresultswithPEPviolationIn[4]:where(aisTrue)Out[4]:(array([],dtype=int64),)#wrongresultswithoutPEPviolationIn[5]:where(

python - 为什么 pep8 建议在评论中使用两个空格?

PEP-8状态:Youshouldusetwospacesafterasentence-endingperiod.在我平时的重构中,我习惯用一个空格代替这种连续的双空格,以为这个习惯是从打字机时代来的(我简略过thisWikipediapage)。此外,大多数时候我都看到用于编程的单空格字体,因此它比其他有时需要2个空格才能轻松识别句子的情况更清晰。在PEP-8中使用它背后有什么原因吗? 最佳答案 只有PEP的作者才能肯定地回答“为什么”。我看过standardlibrarysourcecode,我的结论是风格指南的这一特定方面并未

python - PEP 3103 : Difference between switch case and if statement code blocks

在PEP3103,Guido正在与各种思想流派、方法和对象讨论向Python添加switch/case语句。因为他使thisstatement:Anotherobjectionisthatthefirst-useruleallowsobfuscatedcodelikethis:deffoo(x,y):switchx:casey:print42Totheuntrainedeye(notfamiliarwithPython)thiscodewouldbeequivalenttothis:deffoo(x,y):ifx==y:print42butthat'snotwhatitdoes(unl

python - 无法通过不合逻辑的行 pep8 错误

我已经尝试解决这个问题一段时间了,但我就是无法让它通过pep8。这是我的代码:1.if(len(regex)>2andregex[0]=='('andregex[-1]==')'andsum(regex.count(char)forcharinsplitter)==1andregex.count('(')==1andregex.count(')')==1):print('hi')2.if(len(regex)>2andregex[0]=='('andregex[-1]==')'andsum(regex.count(char)forcharinsplitter)==1andregex.c

python - 当类实现 PEP 3118 时,Python 2.7 中 PyBufferProcs 的定义

我正在扩展我们库中的类(支持Python2.7)以支持PEP3118,这已经向后移植到2.7。根据文档,我需要初始化tp_as_buffer字段指向一个PyBufferProcs。然而,从2.7的文档中,thedescriptionofthisstructure只包含旧条目缓冲协议(protocol)。从消息来源来看,我gather那PyBufferProcs有一些新协议(protocol)的附加条目(bf_getbuffer和bf_releasebuffer)。问题仍然存在:我是否必须做一些特殊的事情来告诉Python这些新条目有效吗?我是否必须填写旧协议(protocol)的条目?