Python 3.11中os.chdir()无法访问网络驱动器路径问题求助
问题:Python 3.11(Anaconda)环境下Jupyter Lab无法访问网络驱动器路径
问题详情
重装Anaconda将Python版本从3.9升级到3.11后,在Jupyter Lab中执行切换到网络驱动器路径的代码时抛出FileNotFoundError:
执行代码:
import os folder = r'Z:\Chris_ResearchDrive\20220520_horopito' os.chdir(folder)
报错信息:
--------------------------------------------------------------------------- FileNotFoundError Traceback (most recent call last) Cell In[7], line 4 1 import os 3 folder = r'Z:\Chris_ResearchDrive\20220520_horopito' ----> 4 os.chdir(folder) FileNotFoundError: [WinError 3] The system cannot find the path specified: 'Z:\\Chris_ResearchDrive\\20220520_horopito'
已排查情况:
- 尝试了所有路径写法组合(单/双正反斜杠、去掉原始字符串标记
r),问题仍存在 - 访问本地驱动器路径(如
r'E:\local_folder')正常 - 此前Python 3.9环境下使用相同方法访问网络路径无问题
解决方案
1. 以管理员身份启动Jupyter Lab
Windows下映射的网络驱动器可能需要管理员权限才能被Jupyter会话识别,右键点击Anaconda Navigator或Jupyter Lab快捷方式,选择「以管理员身份运行」,再执行代码测试。
2. 使用UNC路径替代映射盘符
映射盘符是用户会话级别的,Jupyter可能不在同一会话中,改用UNC路径直接访问服务器共享目录:
import os # 替换为实际的服务器主机名 folder = r'\\server_hostname\Chris_ResearchDrive\20220520_horopito' os.chdir(folder)
3. 在Anaconda会话中手动映射网络驱动器
- 以管理员身份打开Anaconda Prompt
- 执行命令查看当前会话的网络驱动器映射情况:
net use - 如果看不到Z盘映射,手动添加:
net use Z: \\server_hostname\share_folder /persistent:yes - 在该Prompt中启动Jupyter Lab:
jupyter lab
4. 修改Jupyter配置禁用重定向文件
- 在Anaconda Prompt中执行命令查看Jupyter配置目录:
jupyter --config-dir - 打开该目录下的
jupyter_notebook_config.py(若不存在则执行jupyter notebook --generate-config生成) - 添加以下配置项:
c.NotebookApp.use_redirect_file = False - 重启Jupyter Lab后测试
5. 验证Python环境本身的网络访问能力
在Anaconda Prompt中直接运行Python,执行相同的路径切换代码:
import os os.chdir(r'Z:\Chris_ResearchDrive\20220520_horopito')
- 若执行成功,说明问题出在Jupyter Lab的启动上下文而非Python环境
- 若执行失败,检查Windows组策略是否限制了Python的网络访问权限
内容的提问来源于stack exchange,提问作者Ninja Chris
相关产品推荐
相关产品推荐

