Windows下配置文件路径为C:\Users\<用户名>.jupyter\jupyter_notebook_config.py,若不存在可运行jupyter notebook --generate-config生成;macOS/Linux路径为~/.jupyter/jupyter_notebook_config.py,需确保权限正确且不手动创建非标准路径文件。

Windows 系统下配置文件路径
Windows 用户的 jupyter_notebook_config.py 默认位于:C:\Users\<user_name>\.jupyter\jupyter_notebook_config.py</user_name>。其中 <user_name></user_name> 是你的登录用户名,比如 C:\Users\Alice\.jupyter\jupyter_notebook_config.py。
如果该文件不存在,运行 jupyter notebook --generate-config 会自动创建它,并输出生成路径(终端里会明确打印)。注意:该命令默认不会覆盖已有文件,除非你输入 y 确认覆盖。
常见误区:
- 直接在资源管理器地址栏粘贴
C:\Users\Alice\.jupyter可能看不到文件夹——因为.jupyter是隐藏文件夹,需在“查看”选项卡中勾选“隐藏的项目” - 用双击方式打开
.py文件容易被 Python IDE(如 PyCharm)劫持,导致无法编辑;建议右键 → “打开方式” → 选择notepad.exe或 VS Code
macOS 和 Linux 系统下配置文件路径
macOS 和 Linux 用户的配置文件统一在:~/.jupyter/jupyter_notebook_config.py,等价于 /Users/<user_name>/.jupyter/jupyter_notebook_config.py</user_name>(macOS)或 /home/<user_name>/.jupyter/jupyter_notebook_config.py</user_name>(Linux)。
注意:~ 表示当前用户主目录,.jupyter 是隐藏目录。若在 Finder 或 Nautilus 中找不到,可用终端直接跳转:
cd ~/.jupyter
或者用命令生成并确认路径:
jupyter notebook --generate-config
输出行末尾会显示类似 Writing default config to: /Users/alice/.jupyter/jupyter_notebook_config.py 的提示。
关键提醒:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 不要手动新建
.jupyter目录再放配置文件——Jupyter 不识别非标准路径生成的配置 - 如果用
sudo运行过 jupyter,可能生成在 root 用户目录下(/root/.jupyter/),但普通用户启动时不会读取它
配置文件不存在怎么办?
没找到 jupyter_notebook_config.py 是常态,不是错误。Jupyter 启动时只读取已存在的配置文件,不依赖它启动。
只需执行一次:
jupyter notebook --generate-config
就会生成带完整注释的默认配置文件。之后所有修改都基于这个文件做,而不是自己新建一个空的 .py 文件。
补充说明:
- 生成后文件权限应为当前用户可读写,Linux/macOS 下若权限异常(如
-rw-r--r--且属主不对),可用chmod 600 ~/.jupyter/jupyter_notebook_config.py修正 - 配置文件是 Python 脚本,但**只用于读取变量赋值**,不能在里面写逻辑代码或 import 其他模块,否则启动时报
ImportError或静默失败
为什么改了配置文件却没生效?
最常见原因是 Jupyter 没有重启,或读取了错误的配置文件。
验证方式:
- 启动时加
--debug参数:jupyter notebook --debug,观察日志里是否出现Loading config file: /path/to/jupyter_notebook_config.py - 检查是否误改了
c.NotebookApp.notebook_dir的拼写(比如写成c.NotebookApp.noteboook_dir少一个 o,Jupyter 会忽略该行且不报错) - 路径字符串必须用单引号或双引号包裹,且结尾不能有多余空格:
c.NotebookApp.notebook_dir = '/my/notebooks'✅,c.NotebookApp.notebook_dir = /my/notebooks❌(Python 语法错误)
真正起作用的只有那一行赋值,其他注释、空行、未取消注释的配置项都不影响行为。

















