问题标签 [pep]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1199 浏览

python - Python 静态或非静态

我最近开始使用 PyCharm,它告诉我何时我的方法之一可以是静态的(只要我不使用任何成员)。

我想知道尽可能使方法静态化是否是一种好习惯。我知道这在其他(编译)语言中是一个坏习惯,但感觉对于 Python 来说它实际上会更轻松。通常,PyCharm 建议的此类更正由 PEP 编号支持,但没有此编号。

TL;DR 即使我不需要静态使用它们,我是否应该将我的方法声明为静态?

0 投票
1 回答
321 浏览

jdbc - Java 的数据库 API 规范

是否存在类似于 Python ( PEP249 ) 的 Java 数据库 API 规范。

我想制作一个可以通用地连接到数据库的应用程序,而不用担心数据库引擎的类型。

0 投票
2 回答
237 浏览

python - 编码定义必须在 Python 的第 1 行/第 2 行吗?

PEP263

要定义源代码编码,必须将魔术注释放在源文件中,作为文件的第一行或第二行,例如:

或(使用流行编辑认可的格式):

如果在某些情况下许可信息出现在最顶层,例如来自https://github.com/google/seq2seq/blob/master/seq2seq/training/utils.py怎么办:

Python解释器是否仍会“神奇地”接受编码定义?如果答案解释了为什么它必须在第一两行并且指向解释器代码的指针会很棒,那就太好了!

0 投票
0 回答
314 浏览

python - PEP 484 与 PyCharm 2017.1

我有很多领域的几个模块。PyCharm 对某些字段没有自动完成功能(例如:PyCharm 不支持 typping.NamedTyple)。我将这些字段的描述添加到存根文件中。它在 PyCharm 2016 中有效。但现在 PyCharm 对 PEP484 有更好的(但它真的更正确吗?)支持,它忽略了原始模块中的字段。

引自 PEP484:“但是,作为上一个项目符号的例外,使用 from ... import * 导入存根的所有对象都被视为已导出。(这使得从给定模块重新导出可能会有所不同的所有对象变得更加容易按 Python 版本。)” https://www.python.org/dev/peps/pep-0484/#stub-files

我想这意味着我可以from <real module> import *.pyi文件中这样做。但它在 PyCharm 2017.1 中不起作用。

例子: 在此处输入图像描述

我打开了这个问题,但他们说一切都很好,这不是一个错误。

我的问题:

  1. 谁对 PEP 484 的理解有误?
  2. 哪种方式可以将所有字段从真实模块重新导出到存根?
0 投票
1 回答
58 浏览

fiware - 我可以更改 Horizo​​n 提供的访问令牌中的“app_azf_domain”吗?

我正在测试 FIWARE 安全 GEris。但是当我将 PDP (AuthzForce) 与 PEP 代理 (Wilma) 一起使用时,我遇到了问题。

现在,Wilma 和 AuthzForce 分别运作良好。但是,当我使用访问令牌向 Wilma 请求资源时,Wilma 检索到错误的 PDP 域,因为它是由 Horizo​​n 制作的“app_azf_domain”。

这是我的访问令牌:

{ "organizations": [ ], "displayName": "user0", "roles": [ { "name": "End user", "id": "bb42b0b3f680469cbba5b2fb4e8c39f7" }, { "name": "Global manager", “id”:“17c87423eb514fc1a8a7f0fecaa543f9”},{“姓名”:“家庭”,“id”:“0a4839c502054c1189a27e40f3189a55”}],“app_id”:“a8e7489b62fc4ed9b8b8b6ee28d3dd091” “:” user0", "app_azf_domain": "iiJ8_xICEeeHFQJCrBEABA" }

这是问题所在。我没有 iiJ8_xICEeeHFQJCrBEABA 域!

那么,我可以更改 app_azf_domain 或将域命名为 iiJ8_xICEeeHFQJCrBEABA 吗?

0 投票
1 回答
683 浏览

python - 类型注释样式(空格或不空格)

具有以下功能:

PEP 8中明确规定,=当用于指示关键字参数或默认参数值时,不应在符号周围使用空格。

如果我们想对x参数进行类型注释。我们应该怎么做?

有首选方法吗?或者更好的是,它是否在某些 PEP 中指定?在PEP 484中没有找到它。

0 投票
0 回答
251 浏览

python - 在类函数中分配变量以避免python中的PEP错误E501的正确方法

我从类对象中调用一个函数,例如:

如果我在第三行执行此操作,我会收到 PEP 8 错误 E501:行太长。如果我将上面的代码更改为以下内容:

我得到第三行this_is_a_long_variable_name=\PEP 8 错误 E502。括号和 PEP 8 错误 E251 关键字周围出现意外空格之间的反斜杠是多余的。对于第四行this_is_another_long_variable,,我得到 PEP 8 错误 E131 续行未对齐以挂起缩进。

调用对象函数以避免上述错误的正确方法是什么?

0 投票
2 回答
191 浏览

python - PEP 333 应用程序实例和对象

我最近一直在尝试学习 WSGI 以及 Web 与 Python 相关的工作方式。所以我一直在阅读 Werkzeug 和 PEP333 来学习。

但是,我遇到了一个小问题,我想我理解但可能不理解,所以我希望您能朝着正确的方向前进。

PEP333 指出:

应用程序对象只是一个接受两个参数的可调用对象。不应将术语“对象”误解为需要一个实际的对象实例:函数、方法、类或具有调用方法的实例都可以用作应用程序对象。应用程序对象必须能够被多次调用,因为几乎所有服务器/网关(CGI 除外)都会发出这样的重复请求。

实施:

我的问题只是为了澄清我是否理解正确。

它声明 AppClass 是应用程序,当我们调用它时,它返回一个 AppClass 的实例。但是再往下说“如果我们想使用AppClass ass 应用程序对象的实例来代替”,这是否是说当 WSGI 的服务器端调用 AppClass 对象时,只有一个实例在运行?

例如。服务器可以向应用程序发出多个请求(200 OK)以获得更多响应,因此将iter放入类中。但是每个请求都通过同一个单一的 AppClass 实例运行,对服务器的每个请求基本上不会实例化多个 AppClass 实例?

对不起,如果这是冗长的,如果我没有多大意义,再次道歉。我正在努力改进atm。

一如既往地感谢您的投入。

谢谢。

0 投票
2 回答
166 浏览

python - Python,我是否需要返回作为参数传入的对象?

在编写一个接受可变对象的函数时,该对象可能会被更改,是否有必要将此对象返回给调用者?

必要时,我的意思是...

  1. 是否有特定的 PEP 指南?
  2. 如果不是,那么 Python 编程世界中最常见的是什么?

一点代码:

“显式胜于隐式。” 让我觉得我应该args在主体中非常明确地改变潜在的变化,这样就不必查看函数来查看是否args可能会改变......

0 投票
3 回答
287 浏览

python - 我怎样才能打破这条线以满足 PEP8 的要求?

我在“类别”属性的 PEP8 在线检查器中收到“行太长错误”。我的一段代码如图所示: