非管理员权限下Python异常:Anaconda+TensorFlow+Keras部署问题排查
解决无管理员权限下Anaconda中Keras的h5py警告问题
嘿,这个权限导致的依赖警告问题我在实验室环境里碰过好多次了,给你几个实用的解决方向:
给Anaconda目录添加普通用户权限(需要管理员协助)
这是最根本的解决办法。联系实验室管理员,让他们给c:\Anaconda3\lib\site-packages\h5py文件夹以及上级的site-packages目录,设置所有普通用户的读取+写入权限。管理员运行时没问题就是因为他们拥有完全权限,普通用户权限不足才触发了h5py初始化时的警告。创建用户本地的Conda环境(无需管理员)
这是我最推荐的无权限解决方案,每个学生都能自己操作:- 打开普通用户身份的命令提示符(别用管理员模式)
- 创建专属环境:
conda create -n tf_keras_env python=3.8(这里的Python版本可以和全局Anaconda保持一致,比如3.7/3.9) - 激活环境:
conda activate tf_keras_env - 安装依赖:
conda install tensorflow keras
这样每个学生的环境都在自己的用户目录下,完全不受全局权限限制,运行代码也不会有权限相关的警告。
临时屏蔽警告(快速治标)
如果只是不想看到警告,不影响代码运行的话,可以在测试代码开头加上这段:import warnings # 屏蔽h5py的FutureWarning warnings.filterwarnings("ignore", category=FutureWarning) import keras这个方法只是隐藏警告,没解决权限根源,但能让学生的测试流程更顺畅。
本质上这个警告是h5py和Numpy版本兼容的小提示,但因为普通用户对全局Anaconda目录的权限不足,没法正常处理依赖的初始化缓存或配置,才会在非管理员模式下触发。
内容的提问来源于stack exchange,提问作者Drekko
相关产品推荐
相关产品推荐

