小编jon*_*two的帖子

当需要编译 Cython 时,python setup.py install 的最佳替代品是什么?

在最新版本的setuptools中,该python setup.py install命令已被弃用(有关更多信息,请参阅https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html )。

(venv) [jon@dev02 py38]$ python setup.py install
running install
/home/jon/.jenkins/workspace/Farm_revision_linux_py36/TOXENV/py38/venv/lib64/python3.8/site-
packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is 
deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
/home/jon/.jenkins/workspace/Farm_revision_linux_py36/TOXENV/py38/venv/lib64/python3.8/site-
packages/setuptools/command/easy_install.py:156: EasyInstallDeprecationWarning: easy_install 
command is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running bdist_egg
running egg_info
... etc
Run Code Online (Sandbox Code Playgroud)

建议您只pip install .从源代码安装包,但这不会编译任何 Cython 代码。执行此操作的最佳方法是什么?

Cython文档仍然建议使用setup.py,但我找不到任何更好的建议。看来开发人员安装(pip install -e .)确实编译了 Cython 文件,或者您可以python setup.py build_ext --inplace在运行后进行编译pip install …

python setuptools cython

25
推荐指数
1
解决办法
2万
查看次数

Pycharm错误:无法确定模块类型("WEB_MODULE")

我正在使用Pycharm Professional 4.5.4开发一个javascript项目,并且在浏览器中打开项目时看到了一些奇怪的行为.

项目结构就像

/MyProject
    /data
    /images
    /python
    /etc
    /webapp
    /webapp_copy
Run Code Online (Sandbox Code Playgroud)

我在webapp_copy文件夹中尝试了一些更改,但是当我在浏览器中启动时,pycharm启动了该站点的webapp版本.不知道为什么会这样做,可能是因为结构和内容相似.

无论如何,我关闭了项目并重新打开了webapp_copy文件夹.现在我收到错误无法确定以下模块的模块类型("WEB_MODULE"):"webapp_copy".

当我浏览.idea文件夹并查看webapp_copy.iml时,的确如此

<module type="WEB_MODULE" version="4">
Run Code Online (Sandbox Code Playgroud)

为什么Pycharm会将此模块标记为Web模块,然后声称它不知道Web模块是什么?

我试过搜索,但我要么获得IntelliJ的结果,要么得到关于python模块的结果. https://www.jetbrains.com/idea/help/supported-module-types.html

更新:我已将此作为JetBrains的问题提出 - 随意投票! https://youtrack.jetbrains.com/issue/PY-17084

jetbrains-ide pycharm webstorm

16
推荐指数
1
解决办法
8030
查看次数

如何在pytest中抑制第三方日志

我们刚刚从 切换nosepytest并且似乎没有抑制第三方日志记录的选项。在nose配置中,我们有以下行:

logging-filter=-matplotlib,-chardet.charsetprober,-PIL,-fiona.env,-fiona._env
Run Code Online (Sandbox Code Playgroud)

其中一些日志非常啰嗦,尤其是matplotlib我们不想看到输出,只想从我们的日志中输出。

但是我找不到等效的设置pytest。是否可以?我错过了什么吗?谢谢。

python logging nose pytest

8
推荐指数
2
解决办法
393
查看次数

Python指令中预期的类型'Union [ndarray,Iterable]'警告

我已经翻译了一个Matlab函数来创建一个Overcomplete Discrete Cosine Transform矩阵来表示这种矢量空间中的1D信号到Python语言.

Matlab函数

function D = odctdict(n,L)
%ODCTDICT Overcomplete DCT dictionary.
%  D = ODCTDICT(N,L) returns the overcomplete DCT dictionary of size NxL
%  for signals of length N.
%
%  See also ODCT2DICT, ODCT3DICT, ODCTNDICT.    

D = zeros(n,L);
D(:,1) = 1/sqrt(n);
for k = 2:L
  v = cos((0:n-1)*pi*(k-1)/L)';
  v = v-mean(v);
  D(:,k) = v/norm(v);
end
Run Code Online (Sandbox Code Playgroud)

Python翻译功能

import numpy as np


def odct1dict(n, l):
    """
    1-D Overcomplete DCT dictionary.

    D = odct1dict(N, L) returns the overcomplete DCT dictionary …
Run Code Online (Sandbox Code Playgroud)

python warnings numpy translate pycharm

5
推荐指数
2
解决办法
6569
查看次数

当 docstring 需要字符串时,您可以传递 None 参数吗?

好吧,这个问题可能已经在某个地方得到了回答,但我的 Google-fu 还没有找到正确的关键字组合。

我有一个接受字符串的函数,但是当我传递 None 时,Pycharm 的检查会标记类型错误。这是 linter 中的错误吗?None 算作字符串吗?我知道我可以使用空字符串调用该函数,但我认为我也应该能够使用 None 。

def my_func(some_str):
""" does something
Arguments:
some_str (str): a string
"""
    # do something

...

my_func(None)  <-- throws Expected type 'str', got 'None' instead
Run Code Online (Sandbox Code Playgroud)

python lint docstring pycharm

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

有没有一种简单的方法来查看 Gitlab-CI 工件?

我们正在将 CI 从 Phabricator/Jenkins 迁移到 Gitlab,但查看文档的 UX 确实不是很好。合并请求页面的当前工作流程是

单击构建图标>单击阶段(例如构建文档)>单击作业工件下的浏览按钮>单击文档目录>单击_build目录>单击html目录>单击index.html链接

总共点击七次。在 Phabricator 中,Jenkins 机器人通常会在 MR 中通过指向文档页面的链接进行评论,因此您只需单击一下即可查看文档。有没有办法用 Gitlab 来做到这一点?

(我也想对覆盖率和 lint 报告做同样的事情,但会单独提出这些问题,除非有人有一个可以应用于所有三种类型工件的简单解决方案。)

gitlab-ci

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