问题标签 [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 投票
2 回答
75 浏览

python - 类似 PEP 354 的枚举实现

Python 开发人员曾一度考虑将枚举添加到语言中,但他们放弃了该功能。PEP 354有一些实现吗?——规范看起来相当健壮。

0 投票
8 回答
46030 浏览

python - 最好“尝试”一些东西并捕获异常或测试是否可以首先避免异常?

我应该测试if某些东西是有效的还是只是try去做它并捕获异常?

  • 是否有任何可靠的文件表明首选一种方法?
  • 一种方式更pythonic吗?

例如,我应该:

或者:


一些想法......
PEP 20说:

错误永远不应该悄无声息地过去。
除非明确沉默。

是否应该将使用 atry而不是 anif解释为静默传递的错误?如果是这样,您是否通过以这种方式使用它来明确地使其静音,从而使其正常?


不是指您只能以一种方式做事的情况;例如:

0 投票
2 回答
1332 浏览

python - Python 和 Django 编码风格 (PEP)

我使用 Django 框架用 Python 编写代码。现在我已经阅读了所有这些编码风格的建议,但遇到了一个模糊的事情。

在这里的 djangoproject 部分https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/coding-style/#python-style它说函数注释应该这样说:

这样做,返回那个。

但是,这里http://www.python.org/dev/peps/pep-0257/#one-line-docstrings它说它应该这样说:

这样做,返回。

那么,哪个选项是正确的?

0 投票
2 回答
3320 浏览

python - 根据 PEP257 自动检查文档字符串样式的工具

pep8 之类的工具可以检查源代码样式,但它们不会检查文档字符串是否根据pep257pep287 来自atted。有这样的工具吗?

更新

我决定自己实现这样一个静态分析工具,见:

https://github.com/GreenSteam/pep257

现在,大部分pep257都被覆盖了。设计深受上述pep8工具的影响。

0 投票
1 回答
551 浏览

python - PEP 的地位和结构是什么意思?

PEP 身份的结构和含义是什么?

这些天,我尝试写一个python2.7解释器。

但是,我不知道为什么比较运算符 <> 出现在 python 2.7 中。(它不在 python 3.0 中)弄清楚它在 PEP401 中。官方声明是为了未来的兼容性(从未来或某种程度上导入)

令我困惑的是状态是April Fool!

愚人节?

参考:

  1. http://www.python.org/dev/peps/pep-0401/
  2. http://mail.python.org/pipermail/python-list/2009-April/1202030.html
0 投票
1 回答
81 浏览

python - python自定义异常:在哪里?

我在哪里可以写我的自定义异常?

我的软件中是否有类似的文件execeptions.py,或者我必须在与它们相关的类中编写它们?

有没有关于这方面的 PEP?

0 投票
2 回答
2037 浏览

python - 如何避免以“0”开头的python数字文字被视为八进制?

我正在尝试编写一个小型 Python 2.x API 来支持获取 jobby jobNumber,其中jobNumber以整数形式提供。有时用户会提供一个jobNumber以 0 开头的整数文字,例如037537. (这是因为它们被 R 宠坏了,R 是一种理智地认为 . 的语言037537==37537。)然而,Python 认为以“0”开头的整数文字是八进制,因此037537!=37537,而不是037537==16223。这让我觉得这是对最小意外原则的公然冒犯,幸运的是,这看起来在 Python 3 中已修复——参见PEP 3127

但我现在坚持使用 Python 2.7。所以我的用户这样做:

默默地得到错误的工作(16223),或者这个:

Python 拒绝八进制不兼容的数字。

似乎没有提供任何东西__future__来让我获得 Py3K 行为——它必须以某种方式内置到 Python 中,因为它至少需要对词法分析器进行更改。

有谁知道在这种情况下我可以如何保护我的用户免于得到错误的工作?目前我能想到的最好的方法是更改​​该 API,使其采用字符串而不是 int。

0 投票
2 回答
82 浏览

java - 如何在 Python 中记录返回的列表

我有一段代码可以抓取大学时间表网页并生成列表(列表)列表,如下所示:

如果我想用 Python(可能还有 Java 或其他语言)记录这种返回的数据,这样做会有最佳实践吗?

注意:我查看了 PEP,但找不到与此相关的任何内容

0 投票
3 回答
12451 浏览

python - 带有三重单引号和三重双引号的文档字符串有什么区别?

我只是想知道编写 Python Docstrings ( ) 的两种方式有什么区别__doc__

  1. 三个单引号:

    /li>
  2. 三个双引号:

    /li>

在生成文档时,文档字符串的格式化方式是否有任何细微差别?

0 投票
2 回答
2153 浏览

python - 有没有更优雅的方法来处理这个刮板中的空值?

现在我已经弄清楚了如何在 python 中进行 strtotime?我想知道是否有更优雅的方法来处理带有空日期的条目,如果我尝试 strptime() 它们会返回错误。

这行得通,但我在每一行解析四个或五个日期,它看起来既冗长又重复。我在想我应该定义一个函数,但是还有其他方法可以让这更 Pythonic 吗?

为简洁起见,我from datetime import datetime一开始就这样datetime.strptime()做了。否则我需要datetime.datetime.strptime()