小编Att*_*igh的帖子

Python打包:在安装时生成python文件,使用tox

我想在安装时生成一个python文件.

我想既这项工作python setup.py develop,python setup.py installpip install.到现在为止还挺好.

但是我也希望这与tox一起使用.这是我遇到问题的地方.

我使用的方法是调整developinstall命令以在setup.py中生成源代码,如下所示:

# make code as python 3 compatible as possible
from __future__ import absolute_import, division, print_function, unicode_literals

import subprocess
import setuptools
import os.path
import distutils.core

from setuptools.command.develop import develop
from setuptools.command.install import install


# Build anltr files on installation
#   this is such a mess... it looks like there are
#   no common steps to develop and install

class AntlrDevelopCommand(develop): …
Run Code Online (Sandbox Code Playgroud)

python code-generation build setuptools tox

19
推荐指数
1
解决办法
740
查看次数

我可以从 docker 中删除单个层以防止缓存吗?

我有一个长时间运行的 docker 构建过程,所以我不想禁用整个构建的缓存(使用--no-cache)。但是,我想使特定步骤的缓存无效。

我有一个好主意:删除缓存层并重建,因此必须重建。

我用了:

docker build --progress=plain
Run Code Online (Sandbox Code Playgroud)

获取缓存层的 sha:

#16 [stage-9  3/15] RUN pip install -r /tmp/requirements.lock
#16 sha256:e4ac79a1eac5702cd296ccf33a1cfa2e0c3890c77d42737dc62a3b26ac3e798e
#16 CACHED
Run Code Online (Sandbox Code Playgroud)

但后来我得到了这个错误

> docker rmi e4ac79a1eac5702cd296ccf33a1cfa2e0c3890c77d42737dc62a3b26ac3e798
Error: No such image: e4ac79a1eac5702cd296ccf33a1cfa2e0c3890c77d42737dc62a3b26ac3e798
Run Code Online (Sandbox Code Playgroud)

有没有一种(简单)方法删除该层?

注意:对于大多数用例(甚至可能是这个),您可能希望使用--no-cache选项docker build

caching build docker

16
推荐指数
2
解决办法
2492
查看次数

"朋友"在python中的类

有没有办法让类中的某些变量"私有"(或者其他任何东西self.__var)但是可以被其他类访问,比如c ++中的朋友,除了在python中?我不希望任何一个类中的变量被搞乱.我也不想复制整个代码并将其转换为第二类.

python inheritance class friend

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