Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在安装后使用python包源代码而不是使用它_Python - Fatal编程技术网

如何在安装后使用python包源代码而不是使用它

如何在安装后使用python包源代码而不是使用它,python,Python,我想使用psycopg2进行数据库操作。但是由于代码将被打包并发送,我不需要在使用它的远程服务器上安装它的权限。您能告诉我如何直接从tar.gz包中使用代码吗?我已经将路径放入站点包中,但仍然得到ImportError。任何人都可以告诉我们,对于psycopg2,我们想直接使用的任何python包,只要使用源代码,就可以不安装,如何实现这一点吗?对于大多数python包/模块,您应该能够在不安装的情况下构建模块: python setup.py build 并从/build目录复制生成的模块/

我想使用
psycopg2
进行数据库操作。但是由于代码将被打包并发送,我不需要在使用它的远程服务器上安装它的权限。您能告诉我如何直接从
tar.gz
包中使用代码吗?我已经将路径放入站点包中,但仍然得到
ImportError
。任何人都可以告诉我们,对于
psycopg2
,我们想直接使用的任何python包,只要使用源代码,就可以不安装,如何实现这一点吗?

对于大多数python包/模块,您应该能够在不安装的情况下构建模块:

python setup.py build
并从
/build
目录复制生成的模块/包并使用它。对于
psycopg2
包,我从克隆psycopg存储库开始:

git克隆git@github.com:psycopg/psycopg2.git
然后建造它:

cd psycopg2
python setup.py构建
然后,我将包目录复制到我自己的代码所在的新目录:

cp-a build/lib.linux-x86_64-3.6/psycopg2~/myproject
并将其导入:

cd~/myproject
python
Python 3.6.1(默认值,2017年3月27日00:27:06)
[GCC 6.3.1 20170306]在linux上
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>导入psycopg2

注意psycopg2是一个C绑定,因此在构建时编译代码。因此,构建包仅在与您自己的架构相同的计算机上运行。

您是否设置了正确的路径。导入系统;sys.path.append(您的_路径)当您对包使用时,不需要特殊权限。@KarthikBhatK:是的,我是通过站点包完成的。但是下载的tar中的结构与前面提到的用法不同。@klauds::我们这里的本地机器没有pip,所有安装都被阻止。所以,这就是为什么要寻找一种直接使用tar包的方法。