从版本0.9.6的setup
调用setuptools
我可以运行以下命令:
python setup.py clean
但这到底是做什么的?这个命令的帮助有点稀疏,正在运行
python setup.py clean --all
提供无用的陈述,如
'build/lib.linux-i686-2.7' does not exist -- can't clean it
是否有可能将此clean
命令用于例如自动清理以.pyc
和.~
结尾的临时python文件?可以使用此命令完成此操作,是否需要配置,...?
答案 0 :(得分:6)
据我所知,它只删除了build
子目录,其中Python放置了所有要安装的文件,包括需要编译的扩展。
除非您在源目录中的某些脚本上运行Python(如果运行测试可能会发生这种情况),或者直接从源目录导入模块,否则其他地方不应该有任何*.pyc
个文件。
*~
个文件是emacs备份文件,因此setup.py
无法清除。{1}}。 (如果你从make clean
看到过这种行为,那只是因为有人将其编码到Makefile中。)
您可能会以(递归方式)删除*.pyc
文件的方式覆盖clean命令,但我怀疑是否需要。一般来说,如果前者发生变化,Python足够聪明,可以将*.py
文件重新编译为*.pyc
个文件,否则使用后者只会更快。
我遇到过一个警告,那就是在执行setup.py build_ext --inplace
时,清理不会删除已编译的模块,因为这些模块不在构建目录中。对我来说,这感觉就像干净的命令的缺点。
总的来说,看起来添加了干净的命令以符合make
的行为,但它似乎没有增加太多。