标签: package

为什么人们使用tarball?

作为一个主要的Windows开发人员,也许我在Linux社区中遗漏了一些文化,但它总是让我感到困惑.

下载文件首先放入.tar存档的内容然后压缩.为什么两步过程?压缩不实现文件分组吗?还有其他一些我不知道的好处吗?

linux archive package

90
推荐指数
7
解决办法
1万
查看次数

检查是否安装了Python Package

在Python脚本中检查包是否安装的好方法是什么?我知道解释器很容易,但是我需要在脚本中完成它.

我想我可以检查系统中是否有安装过程中创建的目录,但我觉得有更好的方法.我正在尝试确保安装了Skype4Py软件包,如果没有,我会安装它.

我完成检查的想法

  • 检查典型安装路径中的目录
  • 尝试导入包,如果抛出异常,则安装包

python skype package python-import

90
推荐指数
8
解决办法
12万
查看次数

是否有一种标准的方法来列出包中的Python模块的名称?

是否有直接的方法列出包中所有模块的名称,而不使用__all__

例如,给定此包:

/testpkg
/testpkg/__init__.py
/testpkg/modulea.py
/testpkg/moduleb.py
Run Code Online (Sandbox Code Playgroud)

我想知道是否有标准或内置方式来做这样的事情:

>>> package_contents("testpkg")
['modulea', 'moduleb']
Run Code Online (Sandbox Code Playgroud)

手动方法是遍历模块搜索路径以查找包的目录.然后可以列出该目录中的所有文件,过滤掉唯一命名的py/pyc/pyo文件,剥离扩展名,然后返回该列表.但对于模块导入机制已在内部进行的操作,这似乎是相当多的工作.该功能是否暴露在任何地方

python module package

87
推荐指数
4
解决办法
7万
查看次数

是否使用-m选项执行Python代码

python解释器具有-m 模块选项"将库模块模块作为脚本运行".

使用此python代码a.py:

if __name__ == "__main__":
    print __package__
    print __name__
Run Code Online (Sandbox Code Playgroud)

我测试python -m a得到了

"" <-- Empty String
__main__
Run Code Online (Sandbox Code Playgroud)

python a.py回报

None <-- None
__main__
Run Code Online (Sandbox Code Playgroud)

对我来说,这两个调用似乎是相同的,除非__package__在使用-m选项调用时不是None.

有趣的是,python -m runpy a我得到了与python -m a编译的python模块相同的a.pyc.

这些调用之间的(实际)区别是什么?他们之间有什么利弊?

此外,David Beazley的Python Essential Reference将其解释为"-m选项将库模块作为脚本运行,该脚本在执行主脚本之前在__main__模块内执行".这是什么意思?

python module package

87
推荐指数
3
解决办法
6万
查看次数

如何使用go get导入特定版本的软件包?

来自Node我曾经安装特定版本的供应商lib的环境到项目文件夹(node_modules),告诉从控制台npm安装该版本的lib,package.json甚至直接从控制台安装,如下所示:

$ npm install express@4.0.0
Run Code Online (Sandbox Code Playgroud)

然后我习惯在我的项目中导入该包的那个版本:

var express = require('express');
Run Code Online (Sandbox Code Playgroud)

现在,我想做同样的事情go.我怎样才能做到这一点?是否可以安装特定版本的软件包?如果是这样,使用集中式$GOPATH,如何导入一个版本而不是另一个版本?

我会做这样的事情:

$ go get github.com/wilk/uuid@0.0.1
$ go get github.com/wilk/uuid@0.0.2
Run Code Online (Sandbox Code Playgroud)

但是,在导入过程中如何才能有所作为呢?

package-managers package go

86
推荐指数
10
解决办法
8万
查看次数

将代码添加到__init__.py

我正在研究django中的模型系统是如何工作的,我发现了一些我不理解的东西.

我知道你创建一个空__init__.py文件来指定当前目录是一个包.并且您可以设置一些变量,__init__.py以便导入*正常工作.

但是django添加了一堆来自... import ...语句并定义了一堆类__init__.py.为什么?这不是让事情看起来凌乱吗?是否有需要此代码的原因__init__.py

python initialization package

84
推荐指数
4
解决办法
6万
查看次数

Eclipse:声明的包与预期的包不匹配

我在导入外部项目时遇到问题.我将文件 - >导入... - >现有项目导入工作区,选择项目所在的文件夹并导入所有内容 - 但项目的软件包名称似乎不是Eclipse所期望的.包名都有前缀:

prefix.packagename1
prefix.packagename2
Run Code Online (Sandbox Code Playgroud)

等等

但Eclipse期望

src.prefix1.prefix.packagename1
src.prefix1.prefix.packagename2
Run Code Online (Sandbox Code Playgroud)

因为目录是src/prefix1/prefix/package1

我真的不想乱用外部代码.如何告诉Eclipse忽略目录"src/prefix1"?或者我还能做什么?

java eclipse package

80
推荐指数
3
解决办法
11万
查看次数

当从git repo进行pip安装时,为什么#egg = foo

当我从git repo安装"pip install -e ..."时,我必须指定#egg = somename或pip complains.例如:

pip install -e git://github.com/hiidef/oauth2app.git#egg=oauth2app
Run Code Online (Sandbox Code Playgroud)

这个"蛋"字符串有什么意义?

python pip package

79
推荐指数
4
解决办法
2万
查看次数

如何从Python包中读取(静态)文件?

你能告诉我如何读取Python包中的文件?

我的情况

我加载的包有许多我想从程序中加载的模板(用作字符串的文本文件).但是如何指定此类文件的路径?

想象一下,我想从以下位置读取文件:

package\templates\temp_file
Run Code Online (Sandbox Code Playgroud)

某种路径操纵?包基路径跟踪?

python file package

75
推荐指数
5
解决办法
3万
查看次数

通过package.json安装"全局"npm依赖项

我有一些"全局"依赖项(jshint,csslint,buster等),我希望通过命令行自动安装和执行我的软件包npm install.这可能吗?

目前,我手动执行以下操作:

  1. npm install -g <package_name>
  2. 从我的项目中: npm link <package_name>

更新:刚刚遇到这个 npm的功能请求.似乎scriptspackage.json中的配置是要走的路?

再次更新:或者,在阅读了npm文档之后,也许我应该使用.gyp文件?我糊涂了.

package node.js npm

75
推荐指数
3
解决办法
7万
查看次数