我需要使用netcdf,但没有python模块的安装权限。我从这里下载了netcdf-0.1.2.tar.gz:https://pypi.python.org/simple/netcdf/并解压缩了tar球。我一直在关注这个堆栈溢出帖子,试图使用该模块但到目前为止没有运气:
(Python) Use a library locally instead of installing it
这是我尝试过的:
安装virtualenv:
我无权这样做
python setup.py install - user:
再次,我没有许可
使用netcdf作为我当前的工作目录运行我的脚本:
我也尝试了这个,这是我遇到的问题:
首先我进入了netcdf-0.1.2并创建了一个名为asdf.py的新文件
其中包含以下内容:
import netcdf
print("testing")
运行python asdf.py会出现以下错误:
Traceback (most recent call last):
File "asdf.py", line 1, in <module>
import netcdf
File "/.../Downloads/netcdf-0.1.2/netcdf/__init__.py", line 1, in <module>
from netcdf import *
File "/.../Downloads/netcdf-0.1.2/netcdf/netcdf.py", line 1, in <module>
from netCDF4 import Dataset, numpy
ImportError: No module named netCDF4
我不确定如何修复此错误,我们将非常感谢任何帮助
如果这有点相关,我使用的Linux版本是3.2.0-23-generic
我已经安装了numpy
答案 0 :(得分:1)
Easest将使用您的用户权限安装Anaconda或Miniconda。
Anaconda已安装conda install netcdf4
。如果Miniconda安装:
img {
position: absolute;
left: 0px;
top: 0px;
z-index: -1;
}
答案 1 :(得分:0)
如果已安装Python 3,则标准库中将具有venv
软件包,因此您不需要单独为您安装“ virtualenv”(Python 2就是这种情况) 。改为使用python3 -mvenv
,类似于使用virtualenv
的方式,例如:
python3 -mvenv /path/to/my_venv
或包括系统上已安装的所有非标准软件包:
python3 -mvenv --system-site-packages /path/to/my_venv
之后,您应该能够激活环境和pip install
软件包,例如
source /path/to/my_venv/bin/activate # for csh use activate.csh instead
pip install netCDF4
请记住在运行时和安装时都提供activate
脚本的来源:
source /path/to/my_venv/bin/activate
python
,然后您应该在python会话中发现netCDF4
包可用,例如
import netCDF4
my_dataset = netCDF4.Dataset('myfile.nc')
当然,请用实际路径代替上面的/path/to/my_venv
。
所有这些都不需要任何root特权。
(正如其他人所建议的那样,您的另一种选择是使用conda。)
答案 2 :(得分:0)
我还要强调一下,该包裹是使用大写字母导入的
import netCDF4 as nc
这在Mac上可能无关紧要,但对于Windows,这是关键。