资讯动态

Anaconda3与Jupyter Notebook环境配置及使用指南

发布时间:2026/10/21 18:54:04 来源:尧图企业网站定制
数据分析这行干了十来年被问得最多的问题不是某个算法怎么调参而是“环境怎么装”。说出来你可能不信我见过太多人卡在第一步——装个Python环境折腾一整天最后连Jupyter Notebook的界面都没见着。Anaconda3这个发行版本质上就是把Python解释器、conda包管理器、Jupyter Notebook、Spyder以及几百个常用数据科学库打包在一起让你一次性搞定所有环境问题。它解决的核心痛点就一个不用再手动pip install一个个库不用再跟版本冲突死磕。这篇内容适合谁看零基础想入门数据分析的、被环境问题折磨过的、想从原生Python切换到Anaconda的都能直接抄作业。接下来我会把安装过程、Jupyter Notebook的使用方法、以及我这些年踩过的坑全部摊开讲清楚。1. 为什么选Anaconda3而不是原生Python1.1 原生Python的三大痛点很多人觉得装Python不就是去官网下载个安装包一路Next就完事了如果你只是写个Hello World那确实够用。但一旦进入数据分析领域事情就变得复杂了。第一个痛点是库依赖。数据分析常用的库包括NumPy、Pandas、Matplotlib、Scikit-learn、SciPy等等这些库之间存在着复杂的依赖关系。比如Pandas依赖NumPy的特定版本Scikit-learn又依赖SciPy和NumPy的特定版本组合。你手动一个个pip install很可能装到第三个库的时候前面两个库的版本就被顶掉了。我试过一次光是配一个能跑机器学习的环境就花了整整一个下午在解决版本冲突。第二个痛点是环境隔离。你可能同时在做两个项目一个需要TensorFlow 1.x另一个需要TensorFlow 2.x。原生Python只有一个全局环境你装了2.x1.x的项目就跑不起来了。虽然可以用virtualenv做隔离但那个操作门槛对新手来说并不低。第三个痛点是科学计算库的编译问题。有些库在Windows上安装时需要C编译环境比如早期版本的SciPypip install直接报错你得先去装Visual Studio Build Tools几个G的下载量装完还不一定能编译成功。1.2 Anaconda3到底打包了什么Anaconda3这个发行版你可以把它理解成一个“全家桶”。它包含了以下核心组件组件作用是否常用Python解释器运行Python代码的核心必须conda包管理和环境管理工具必须Jupyter Notebook交互式编程笔记本必须Spyder科学计算IDE可选Navigator图形化管理界面可选数百个科学计算库NumPy/Pandas/Matplotlib等大部分常用conda这个工具是Anaconda的灵魂。它跟pip最大的区别在于pip只管Python包conda什么包都能管包括C库、R包、甚至Node.js。而且conda在安装包的时候会做全局依赖求解确保所有包的版本互相兼容。这就是为什么我说装Anaconda3能帮你省掉至少80%的环境配置时间。1.3 版本选择的逻辑Anaconda3的版本号跟着Python版本走。比如Anaconda3-2024.02默认带的是Python 3.11Anaconda3-2023.09默认带Python 3.10。我的建议是不要追最新版。数据分析领域稳定比新功能重要得多。很多库对新版Python的适配会滞后几个月你装了最新版Python结果发现某个关键库还不支持那就尴尬了。我个人的选择标准是选比最新版落后一个小版本的Anaconda。比如现在最新是2024.02那我就选2023.09。这个版本的Python 3.10已经经过了充分的市场验证几乎所有主流库都完美支持。注意如果你所在的项目组有统一的版本要求以团队规范为准。环境一致性比个人偏好重要。2. 下载与安装的完整实操流程2.1 下载渠道与文件选择Anaconda的官方下载渠道是anaconda.com/distribution。打开页面后你会看到两个大按钮一个Windows一个macOS。这里有个细节要注意如果你的电脑是64位系统现在基本都是一定要选64位的安装包。32位安装包有内存限制处理大数据集时会直接崩掉。下载文件的大小在600MB到800MB之间取决于版本。这个体积看着吓人但你想想要是手动装那几百个库下载量只会更大。下载速度取决于你的网络环境我实测下来国内直接下载大概需要10到30分钟。还有一个选择是Miniconda。Miniconda只包含conda和Python不含那几百个预装库体积只有几十MB。如果你明确知道自己只需要少数几个库Miniconda是更轻量的选择。但对于新手我还是推荐Anaconda3因为你不知道自己将来会用到什么库预装好的全家桶省心。2.2 Windows下的安装步骤Windows安装Anaconda3双击下载好的.exe文件然后跟着向导走。有几个关键节点需要你做出选择第一个节点是安装路径。默认路径是C:\Users\你的用户名\anaconda3。这个路径有两个问题一是包含中文用户名的话可能出问题二是C盘空间紧张。我建议改成D:\anaconda3或者类似的纯英文短路径。路径中绝对不能有中文和空格这是铁律。第二个节点是“Add Anaconda3 to my PATH environment variable”这个选项。安装程序会明确建议你不要勾选理由是可能与其他软件冲突。但根据我的经验如果你不勾选后续在命令行里直接用conda命令会报“不是内部或外部命令”。所以我的做法是勾选它。冲突的概率极低但不勾选带来的麻烦是100%会遇到的。第三个节点是“Register Anaconda3 as my default Python”。这个选项建议勾选这样系统里其他需要Python的软件能自动找到Anaconda的Python。安装过程大概需要5到10分钟取决于你的硬盘速度。安装完成后在开始菜单里能看到Anaconda Navigator和Anaconda Prompt两个快捷方式。2.3 macOS下的安装步骤macOS的安装更简单下载.pkg文件后双击一路继续就行。安装路径默认是/opt/anaconda3或者~/anaconda3不需要改。安装完成后打开终端输入conda --version如果能看到版本号说明安装成功。如果提示command not found需要手动初始化一下shell。执行下面这行命令source ~/anaconda3/bin/activate conda init zsh如果你用的是bash而不是zsh把zsh换成bash。执行完后关闭终端重新打开conda命令就能用了。2.4 安装后的验证操作不管什么系统安装完成后必须做三件事来验证环境是否正常。第一件事打开终端或Anaconda Prompt输入conda --version python --version如果分别输出了conda的版本号和Python的版本号说明基础环境没问题。第二件事验证核心库是否可用python -c import numpy; import pandas; import matplotlib; print(All OK)如果输出了All OK说明预装的库都能正常导入。第三件事启动Jupyter Notebookjupyter notebook浏览器会自动打开一个页面地址是localhost:8888。看到文件列表界面就说明Jupyter Notebook也正常工作了。实操心得安装完成后建议立刻执行conda update conda更新conda自身。新版本的conda在依赖求解速度上有明显提升能帮你省下不少等待时间。3. Jupyter Notebook的核心使用方法3.1 界面结构与基本操作Jupyter Notebook启动后浏览器里看到的界面分为几个区域。顶部是菜单栏和工具栏中间是文件列表右侧有新建、上传等按钮。新建一个Notebook的方法点击右上角的New按钮选择Python 3。浏览器会打开一个新标签页里面就是你写代码的地方。Notebook的核心概念是“单元格”Cell。每个单元格可以是一段代码也可以是一段Markdown文本。代码单元格里写Python代码按ShiftEnter执行结果直接显示在单元格下方。Markdown单元格用来写说明文档支持标题、列表、表格、图片等格式。工具栏上有几个常用按钮需要记住按钮功能快捷键Run执行当前单元格ShiftEnterStop中断执行无Restart重启内核无Cell Type切换单元格类型Y代码/MMarkdownInsert在上方插入单元格AInsert在下方插入单元格BDelete删除单元格DD这些快捷键在命令模式下生效。命令模式和编辑模式的切换按Esc和Enter。刚开始可能不习惯用多了效率比鼠标操作高很多。3.2 代码执行与内核管理Jupyter Notebook的执行模型跟普通Python脚本有个本质区别它维护一个“内核”Kernel所有代码都在这个内核里执行变量在单元格之间是共享的。举个例子你在第一个单元格里写x 10并执行然后在第二个单元格里写print(x)会输出10。这就是Notebook的交互式特性非常适合做数据探索。但这也带来一个常见问题执行顺序混乱。你可能先执行了第三个单元格再执行第一个单元格变量的值就跟你预期的不一样了。我踩过这个坑调试了半天发现是执行顺序的问题。解决办法是养成从上到下顺序执行的习惯。如果代码改乱了点击Kernel菜单里的Restart Run All从头到尾重新执行一遍。这样能保证所有变量的状态都是确定的。内核还有一个概念叫“重启”。重启内核会清空所有变量但不会清空单元格里的代码。当你发现内存占用过高或者某个库导入后状态异常重启内核是最快的恢复方式。3.3 魔法命令的实用技巧Jupyter Notebook支持一种叫“魔法命令”Magic Command的特殊指令以%或%%开头。这些命令能极大提升你的工作效率。常用的行魔法命令以%开头只作用于当前行%timeit测量一行代码的执行时间自动多次运行取平均值%matplotlib inline让Matplotlib的图表直接显示在Notebook里%load加载一个外部脚本到当前单元格%run执行一个外部Python脚本%pwd显示当前工作目录%ls列出当前目录下的文件常用的单元魔法命令以%%开头作用于整个单元格%%time测量整个单元格的执行时间%%writefile把单元格内容写入文件%%capture捕获单元格的输出不直接显示我举个实际例子。你想测试Pandas读取CSV文件的性能可以这样写%timeit df pd.read_csv(data.csv)它会自动运行多次输出类似“10 loops, best of 3: 45.2 ms per loop”的结果。这比你自己写time.time()方便多了。注意%matplotlib inline在较新版本的Jupyter里已经默认启用了不需要手动加。但如果你用的是老版本加上这行能避免图表不显示的问题。3.4 文件管理与导出Jupyter Notebook的文件管理有几个要点。首先是工作目录。Notebook启动时的工作目录就是你执行jupyter notebook命令时所在的目录。你可以在启动时指定目录jupyter notebook --notebook-dirD:/my_project这样Notebook就会在D:/my_project目录下启动文件列表里显示的就是这个目录的内容。其次是文件格式。Notebook文件的后缀是.ipynb本质是一个JSON文件里面包含了代码、输出结果、Markdown文本等所有信息。这个格式的好处是自包含分享给别人时对方能看到你的代码和运行结果。导出功能在File菜单里。你可以把Notebook导出为多种格式HTML适合分享给不需要运行代码的人看PDF适合打印或正式文档Python脚本.py适合把Notebook转成可执行的脚本Markdown适合发布到博客或文档系统我个人的习惯是探索阶段用Notebook代码稳定后导出为.py脚本放到正式的项目结构里。Notebook适合交互式探索但不适合做工程化的代码组织。4. 环境管理与常见问题排查4.1 conda环境隔离的正确姿势前面说过环境隔离是Anaconda的核心优势之一。具体怎么操作创建一个新环境conda create -n myenv python3.10这行命令创建了一个名为myenv的环境Python版本指定为3.10。创建完成后激活这个环境conda activate myenv激活后命令提示符前面会出现(myenv)的标识表示你当前在这个环境里。这时候你安装的任何库都只影响这个环境不会污染其他环境。退出环境conda deactivate查看所有环境conda env list删除环境conda env remove -n myenv我的建议是每个项目一个独立环境。项目A用Python 3.9加TensorFlow 2.10项目B用Python 3.11加PyTorch 2.0各自独立互不干扰。环境名用项目名一目了然。4.2 包安装的两种方式对比在conda环境里装包有两种方式conda install和pip install。conda install是首选。它会自动处理依赖关系确保所有包的版本兼容。比如conda install pandas matplotlib scikit-learnpip install是备选。当某个包在conda的仓库里没有时才用pip。比如一些比较新的或者比较小众的库pip install some-package但要注意在conda环境里混用pip和conda可能导致依赖冲突。我的原则是能用conda就用condaconda没有的再用pip。而且用pip装完包之后不要再执行conda install否则conda可能会把pip装的包覆盖掉。4.3 常见报错与解决方案速查下面这张表整理了我这些年遇到的高频问题以及对应的解决方法报错信息原因解决方法conda不是内部或外部命令环境变量未配置重装时勾选Add to PATH或手动添加Jupyter Notebook打不开端口被占用换端口jupyter notebook --port 8889内核启动失败内核未注册执行python -m ipykernel install --user导入库报DLL错误缺少C运行库安装Visual C Redistributableconda install卡在Solving environment依赖求解慢换用mambaconda install mamba -n base中文显示为方块字体缺失在代码里设置plt.rcParams[font.sans-serif][SimHei]其中“Solving environment”这个问题特别常见。conda的依赖求解器在处理复杂环境时确实慢有时候能卡好几分钟。mamba是用C重写的求解器速度快几十倍。安装mamba后把conda install换成mamba install体验会有质的提升。4.4 性能优化与使用习惯最后分享几个提升效率的习惯。第一把常用的启动命令做成快捷方式。Windows下可以创建一个批处理文件内容就一行jupyter notebook --notebook-dirD:/my_project双击就能启动。第二定期清理无用的环境。conda env list看看有哪些环境不用的就删掉。每个环境占用的磁盘空间从几百MB到几个GB不等积少成多很可观。第三Notebook里的输出结果会保存在.ipynb文件里。如果某个单元格输出了很大的DataFrame文件体积会暴涨。定期点击Cell菜单里的All Output - Clear把输出清掉再保存文件能小很多。第四用Jupyter Lab替代Notebook。Jupyter Lab是下一代界面支持多标签、拖拽布局、内置终端体验更接近现代IDE。安装命令是conda install jupyterlab启动命令是jupyter lab。用惯了Lab之后我基本不回Notebook了。我在实际使用中的体会是Anaconda3加Jupyter Notebook这套组合最大的价值不是某个具体功能有多强而是它把数据分析的门槛降到了足够低。你不需要成为系统管理员不需要懂编译原理只需要专注于数据本身。装环境这件事一次装好后面几年都不用再操心。踩过几次坑之后你会发现前期花半小时把环境配稳比后面花几天解决版本冲突划算得多。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑