问题标签 [python-config]

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 投票
0 回答
1829 浏览

python-3.x - 错误:在 PATH 中找不到 python-config

以下错误阻止我通过dbus-python安装pip3

python-config通过安装pip3没有问题,我认为这会将它放在 PATH 中(但它没有?)完整的输出可以在这篇文章的末尾看到。

使用 Python 2.7 时也会发生同样的情况。下面的两个命令产生相同的错误:

最终我的目标是安装AutoKey(autokey-py3),但是,它setup.py需要dbus-python,因此会发生相同的错误。我不确定下一步要做什么,因为dbus-python通过正确安装dnf(我在 Fedora27 上)。如果有任何帮助,dbus-devel 和 dbus-glib-devel 软件包也已通过 dnf 成功安装。

此外,在 Python 中导入 dbus 工作正常(因为它是通过 dnf 安装的,我想),但由于某种原因,通过 pip3 安装失败。

谢谢!

PS:下面是显示错误的完整输出。

命令“/usr/bin/python3 -u -c”导入setuptools,tokenize;file ='/tmp/pip-build-x10w__hm/dbus-python/setup.py';f=getattr(tokenize, 'open', open)( file );code=f.read().replace('\r \n', '\n');f.close();exec(compile(code, file , 'exec'))" install --record /tmp/pip-uajq6lpe-record/install-record.txt -- single-version-externally-managed --compile --user --prefix=" 失败,错误代码 1 在 /tmp/pip-build-x10w__hm/dbus-python/

0 投票
3 回答
73 浏览

python - 如何将 python 打包到我的项目中?

我正在制作一个将调用 python 的程序。我想在我的项目中添加python,这样用户就不必为了使用它而下载python,而且最好使用我的程序具有的python,这样用户就不必下载任何依赖项。

我的程序将用 C++ 编写(但可以是任何语言),我想我必须调用与我的项目相同路径的 python?

假设用户正在运行的系统已经有python并且他/她调用'pip'我希望程序调用python提供的pip给我的程序并将其安装在程序目录而不是系统的python中?

这可能吗?如果是我该怎么做?

真实示例:有些程序提供了一个终端,您可以在其中执行 python 在程序中执行以下操作:

  • 欧特克的玛雅
  • 铸造厂的核弹
  • 胡迪尼的副作用

注意:必须是跨平台解决方案

0 投票
0 回答
749 浏览

python - Python ConfigParser .ini 解析和可移植变量替换

我想要一个.ini引用特殊变量的条目,例如

目前,我有非便携式

I would like to have a .ini path entry that is more portable instead of hard-coded to my computer. Does the Python ConfigParser natively perform substitutions like this?


This is slightly different than SO question ConfigParser and String interpolation with env variable because I am wondering about any possible default interpolated variables, not just environment variables.

This is for passing information to a different module (mypy) that uses ConfigParser.

Specifically, this is for improving portability in a Python package. I'm trying to set the mypy_path within a mypy.ini while working with a pipenv-created virtualenv python environment. The user install module paths will change so I want to portably set that for mypy.

使用 Python 3.7。

0 投票
1 回答
1085 浏览

python - Python:无法从属性文件中读取属性

我正在尝试从属性文件中读取配置并将这些属性存储在一个变量中,以便可以从任何其他类访问它。

我可以从配置文件中读取配置并打印相同的配置,但是当从其他类访问这些变量时出现异常。

我的配置文件

我将我的属性存储在变量中的通用类。配置读取器.py

我试图获取“YSL_Leader”值的另一个类

例外:

仅供参考:单独运行 ConfigReader.py 时没有任何异常

0 投票
1 回答
377 浏览

python - 在进行第一次配置分配后覆盖应用程序配置是否安全(并且它不会否定 facotry 模式的好处)?

您好,我们有几种方法可以在 Flask 中设置应用程序配置。

  1. ENV在运行flask之前直接在cmd中使用var

  2. app.config['xxx']

  3. app.config.from_object(模块或类)

  4. app.config.from_pyfile(文件)

  5. app.config.from_envvar(文件路径_ENVVAR)

我已经读过,例如在单元测试时,最好实现工厂模式,因为某些配置在覆盖时不起作用。

所以我想知道从上面使用多种方法是否安全?

例如,如果我一起遵循以下步骤,那么假设配置将被正确应用是否安全?

第 1 步:在运行应用程序之前使用方法 1(例如设置ENVvar 密钥设置ENV可以在第 2 步的代码中检查的 var 以决定是应用 dev/prod 配置设置类还是设置ENVvar PATH_TO_SOMECONFIGFILE)

第 2 步:在初始化 app 对象后,立即使用方法 3(设置默认生产设置检查ENV上述步骤中设置的 var 以调用适当的 dev/prod 类)。

第 3 步:在上述步骤之后,立即使用方法 4 或 5 更新配置设置

那么步骤 3 中的设置是否会正确覆盖所有先前(先前设置的)设置?这是一个好的做法吗?并且它不会否定使用工厂模式的好处,因为我已经读过不使用工厂模式(例如在单元测试时)可能会导致某些配置,如果更新将无法正确应用。因此,创建工厂模式以获取应用所需配置的新对象。

0 投票
1 回答
1864 浏览

wxpython - 在 env 中安装 wxPython 时已安装 Python-Config 但未找到

我正在尝试使用安装 wxpythonpython3 -m pip install wxpython的 HP x86 机器安装新的 Ubuntu18.04.3 LTS。我已经设置了一个 python 环境并拥有 Python 3.6.9。当我在环境中运行上述命令时,我得到

我已经安装了python:

并检查了路径:

有没有人对这里发生的事情以及如何解决有任何建议?

0 投票
0 回答
1140 浏览

python - Python unittest 配置的最佳实践?

我的目标是创建一个包含模块和单元测试的 GitHub 存储库,其他开发人员可以检查和处理,包括运行单元测试。该模块进行 PDF 操作,因此我需要提供一些示例 PDF 进行测试,以及输入和输出的路径。我将一个 .ini 文件和一些示例 PDF 放在源代码的根目录之外。我的单元测试的 setUp 有一个到 .ini 文件的硬编码相对路径,其中包含单元测试所需的所有其他输入:

然后,这些变量(例如 )self.test_file_path在此类的所有单元测试中都可用。这是我的文件夹结构:

回购文件夹结构

关于配置:这是将配置交付给我的单元测试的好方法吗?这运行得很好,所以这是一个最佳实践的问题。我假设几乎每个单元测试都需要提供某种输入,无论是文件数据、URL、路径、SQL 片段、凭据、令牌等,那么约定是什么?

关于 PDF 文件:我将它们尽可能小,仅用于测试 (200KB)。同样,它在技术上运行良好,但是 repos 通常如何交付这样的数据文件?

0 投票
1 回答
326 浏览

python - 无法在 Python2.7 中安装 pylint 并且即使使用本地 setup.py 安装也会出现不匹配的错误

对于开发环境受限我必须Python2.7Windows10中使用。
所以我选择安装pylint为我在管理员模式下使用的 linter。

但它只输出如下:

警告:连接被 'ConnectTimeoutError(, '连接到 pypi.org 超时后,重试 (Retry(total=0, connect=None, read=None, redirect=None, status=None))。(连接超时 = 15) ')': /simple/pylint/

此消息重复多次然后给出这样的输出:

错误:找不到满足要求 pylint<2.0.0 的版本(来自版本:无)错误:找不到 pylint<2.0.0 的匹配分布

所以我在PyPI中下载了 1.9.3 版本。
并尝试setup.py在管理员模式下安装它,如下所示:

但也会遇到与以前相同的问题:

警告:重试(重试(总计 = 4,连接 = 无,读取 = 无,重定向 = 无,状态 = 无))连接被 'ConnectTimeoutError(,'连接到 pypi.org 超时。(连接超时 = 15) ')': /simple/pylint/

警告:重试(重试(总计 = 3,连接 = 无,读取 = 无,重定向 = 无,状态 = 无))连接被 'ConnectTimeoutError(,'连接到 pypi.org 超时。(连接超时 = 15) ')': /simple/pylint/

警告:重试(重试(总计 = 2,连接 = 无,读取 = 无,重定向 = 无,状态 = 无))连接被 'ConnectTimeoutError(,'连接到 pypi.org 超时。(连接超时 = 15) ')': /simple/pylint/

警告:连接被 'ConnectTimeoutError(, '连接到 pypi.org 超时后重试 (Retry(total=1, connect=None, read=None, redirect=None, status=None))。(连接超时=15) ')': /simple/pylint/

警告:连接被 'ConnectTimeoutError(, '连接到 pypi.org 超时后,重试 (Retry(total=0, connect=None, read=None, redirect=None, status=None))。(连接超时 = 15) ')': /simple/pylint/

错误:找不到满足要求 pylint==1.9.3 的版本(来自版本:无)

错误:找不到 pylint==1.9.3 的匹配分布

而且我还尝试了旧版本,如1.8.41.7.4等。

警告:重试(重试(总计 = 4,连接 = 无,读取 = 无,重定向 = 无,状态 = 无))连接被 'ConnectTimeoutError(,'连接到 pypi.org 超时。(连接超时 = 15) ')': /simple/pytest-runner/

警告:重试(重试(总计 = 3,连接 = 无,读取 = 无,重定向 = 无,状态 = 无))连接被 'ConnectTimeoutError(,'连接到 pypi.org 超时。(连接超时 = 15) ')': /simple/pytest-runner/

警告:重试(重试(总计 = 2,连接 = 无,读取 = 无,重定向 = 无,状态 = 无))连接被 'ConnectTimeoutError(,'连接到 pypi.org 超时。(连接超时 = 15) ')': /simple/pytest-runner/

警告:连接被 'ConnectTimeoutError(, '连接到 pypi.org 超时后重试 (Retry(total=1, connect=None, read=None, redirect=None, status=None))。(连接超时=15) ')': /simple/pytest-runner/

警告:连接被 'ConnectTimeoutError(, '连接到 pypi.org 超时后,重试 (Retry(total=0, connect=None, read=None, redirect=None, status=None))。(连接超时 = 15) ')': /simple/pytest-runner/

错误:找不到满足 pytest-runner 要求的版本(来自版本:无)

错误:找不到 pytest-runner 的匹配分布

回溯(最近一次通话最后):

文件“C:\ProgramData\Anaconda3\lib\site-packages\setuptools\installer.py”,第 128 行,在 fetch_build_egg

subprocess.check_call(cmd)

文件“C:\ProgramData\Anaconda3\lib\subprocess.py”,第 363 行,在 check_call 中

subprocess.CalledProcessError: 命令'['C:\ProgramData\Anaconda3\python.exe', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no- deps', '-w', 'C:\Users\EU\AppData\Local\Temp\tmpyjj78l40', '--quiet', 'pytest-runner']' 返回非零退出状态 1。

在处理上述异常的过程中,又出现了一个异常:

回溯(最近一次通话最后):

文件“setup.py”,第 178 行,在

安装中的文件“setup.py”,第 175 行

**kwargs)

文件“C:\ProgramData\Anaconda3\lib\site-packages\setuptools__init__.py”,第 143 行,在设置中

_install_setup_requires(attrs)

_install_setup_requires 中的文件“C:\ProgramData\Anaconda3\lib\site-packages\setuptools__init__.py”,第 138 行

dist.fetch_build_eggs(dist.setup_requires)

文件“C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py”,第 721 行,在 fetch_build_eggs

replace_conflicting=真,

文件“C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources__init__.py”,第 783 行,解决

替换冲突=替换冲突

文件“C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources__init__.py”,第 1066 行,在 best_match

返回 self.obtain(req, 安装程序)

文件“C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources__init__.py”,第 1078 行,在获取

返回安装程序(要求)

文件“C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py”,第 777 行,在 fetch_build_egg

返回 fetch_build_egg(self, req)

文件“C:\ProgramData\Anaconda3\lib\site-packages\setuptools\installer.py”,第 130 行,在 fetch_build_egg

引发 DistutilsError(str(e))

distutils.errors.DistutilsError: 命令'['C:\ProgramData\Anaconda3\python.exe', '-m', 'pip', '--disable-pip-version-check', 'wheel', '-- no-deps', '-w', 'C:\Users\EU\AppData\Local\Temp\tmpyjj78l40', '--quiet', 'pytest-runner']' 返回非零退出状态 1。

但是这里仍然存在其他问题,这让我整天都感到困惑。

那么有人可以帮助我或提供一些提示吗?
提前感谢。

0 投票
1 回答
141 浏览

python - python: how to change python-config into my current python version

My question is that,

if I run

it returns

However, If I run

It returns

which is the built-in python 2.7 in macbook.

How can I change the config into the current python that I'm using?

0 投票
0 回答
29 浏览

python - Python 安装问题:我复制了 python3-config 以移动到所需的路径,但无法访问它

我正在使用 Amazon Linux EC2 实例进行设置。

我正在尝试运行我安装的这个程序,但它给了我错误:

$ /usr/local/bin/python3-config: line 2: /bin/python3-config: No such file or directory

我在 /usr/local/bin/ 中有 python3-config 但在 /bin/ 中没有 python3-config 所以我将 python3-config 复制到 /bin/ --

$ cp /usr/local/bin/python3-config /bin/python3-config

我现在在运行我的程序时收到错误消息:

$ /bin/python3-config: fork: Cannot allocate memory

我该如何解决这个问题?非常感谢!

更新:我从 /bin/ 中删除了 python3-config,然后运行:

$ sudo ln -s /usr/local/bin/python3-config /bin/python3-config

但是现在运行程序时出现此错误:

$ /bin/python3-config: line 2: 1867 Segmentation fault /bin/python3-config $*