再为新手说次环境(MiniConda+Notebook+VSCode篇)
自用开发环境由于版本迭代、插件升级、后浪推前浪经常变的(研发环境基本上都是很稳定的)
PS:最后一次更新时间:2021-08
MiniConda基本上和之前讲的Anaconda一样,只是"没那么多自带的应用了"更轻量级而已(命令都一样)
1.下载与配置
1.1.安装包
官网下载比较慢https://repo.continuum.io/miniconda/,可以通过大学的镜像站,比如清华的:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
下载之后配置下源即可:
1.2.配置源
各系统都可以通过修改用户目录下的.condarc
文件
PS:Windows 用户无法直接创建名为
.condarc
的文件,可先执行conda config --set show_channel_urls yes
生成该文件之后再修改
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
运行conda clean -i
清除索引缓存,保证用的是镜像站提供的索引
旧命令回顾(历史)
conda config --show-sources # 查看当前使用源
conda config --remove channels 源名称或链接 # 删除指定源
conda config --add channels 源名称或链接 # 添加指定源
命令换源:
conda config --remove key value # 移除源
conda config --add key value # 添加源
2.安装jupyter等常用库
在线预览ipynb文件:https://nbviewer.jupyter.org/
这边主要安装下jupyter,其他的库用到就安装一下:conda install jupyter
PS:一键更新所有库:
conda update --all
,卸载库:conda uninstall jupyter
2.1.配置默认路径
现在电脑是Win10版本,直接贴下Win版的解决方法
PS:详细可以参考我之前写的这篇文章Ubuntu18.04下给Jupyter-NoteBook设置默认工作路径(附Win设置和pip版)
删除默认参数:
生成配置文件jupyter-notebook --generate-config
并设置路径:code .jupyter/jupyter_notebook_config.py
PS:
c.NotebookApp.notebook_dir = 'E:\Works'
2.2.配置远程访问
本地很多时候都是没有这些环境的,如果有远程访问的方式则大大提高工作效率
PS:详细可以参考我之前写的这篇文章Jupyter-Notebook 远程访问
可以通过c.NotebookApp.ip
来配置
也可以直接启动的时候指定本地的ip:jupyter-notebook --ip=192.168.0.19
只要把链接后面的token也带上就可以任意设备访问:
http://192.168.0.19:8888/?token=cfd4dfbf5f07b18564f101a73002bcc8800383aed2a08e4b
而jupyter-notebook --ip=*
==> 本地有的ip都可以访问(内网ip + 外网ip)平时自己开发的时候经常偷懒这么干
PS:这个和ss是一个道理
2.3.设置服务端密码
场景衍生:每次都通过token访问太麻烦了,一直在变,对自用或者小团队来说十分不方便
PS:详细可以参考我之前写的这篇文章Jupyter-Notebook服务器自定义密码
虽然可以一个命令获取token,但是还是麻烦:jupyter-notebook list
配置文件中设置下密码 ==> 根据提示知道密码是通过加密得到的
通过notebook的模块来生成自定义密码:from notebook.auth import passwd
passwd()
重新运行下就不生成token了,而是让你输入password,成功输入后就可以访问了
PS:说句实话,还是token相对更安全点,一个密码框容易被爆破,教程之前讲MVC的时候说过,感兴趣可以翻翻
2.4.Notebook目录扩展
使用Notebook的时候,有时候文章写的很长,没有目录是比较麻烦的,所以得弄个toc扩展
PS:详细可以参考我之前写的这篇文章为Jupyter只安装目录的扩展包(文末我贴了两个文件的内容)
先下载toc.css
和toc.js
,切换到对应目录后安装一下(安装前关闭jupyter-notebook
):jupyter-nbextension install toc
之后启用jupyter-nbextension enable toc/toc
(新建一个toc目录,里面两个文件,toc.css
toc.js
)
https://raw.githubusercontent.com/minrk/ipython_extensions/master/nbextensions/toc.js
https://raw.githubusercontent.com/minrk/ipython_extensions/master/nbextensions/toc.css
温馨提示:如果一直安装失败,看看是不是针对toc目录安装的,安装的时候不要cd到toc目录里面。然后如果提示成功,但是打开notebook缺发现目录不能正常显示,可以到C:\ProgramData\jupyter\nbextensions
看看是否真的安装成功,有时候是没C盘的权限,运行命令的时候使用管理员权限即可解决(安装插件的时候关闭jupyter)
PS:样式美化可以看这篇文章:Jupyter Notebook 编辑器美化
取消启用:jupyter-nbextension disable toc/toc
,取消安装:jupyter-nbextension uninstall toc
新版失效补充
toc2父目录下执行命令:jupyter-nbextension install toc2
and jupyter-nbextension enable toc2/main
目录这次在左边,更长一点:
取消启用:jupyter-nbextension disable toc2/toc2
,取消安装:jupyter-nbextension uninstall toc2
备份文件打包链接:https://files-cdn.cnblogs.com/files/dotnetcrazy/toc2.zip
3.配置VSCode
3.1.开发辅助库
规范化提示:pycodestyle
(旧名字flake8)代码格式化:yapf
or autopep8
conda install pycodestyle yapf
3.2.VSCode配置
1.设置
2.现在很多选项都不让json配置了,太麻烦了,随便选一个可以json配置的先进入配置文件中
3.配置settings
{
// 代码格式化工具指定为yapf
"python.formatting.provider": "yapf",
// 启用代码检查
"python.linting.enabled": true,
// 开启pycodestyle规范
"python.linting.pycodestyleEnabled": true,
// 已经启用pycodestyle了,pylint就不需要了
"python.linting.pylintEnabled": false,
// 设置pycodestyle的路径
// "python.linting.pycodestylePath": "pycodestyle",
// 调试的时候不激活虚拟环境
"python.terminal.activateEnvironment": false,
}
4.F5,选python文件类型就可以运行了
- 设置调试的配置文件
Win的比较简单,基本上新建文件就可以了(先打开一个python的项目文件夹)
支持以下预定义变量:
$ {workspaceFolder} -在VS Code中打开的文件夹的路径
$ {workspaceFolderBasename} -在VS Code中打开的文件夹名称,不带任何斜杠(/)
$ {file} -当前打开的文件
$ {relativeFile} -当前相对于打开的文件workspaceFolder
$ {relativeFileDirname} -当前打开的文件相对于的目录名workspaceFolder
$ {fileBasename} -当前打开的文件的基本名称
$ {fileBasenameNoExtension} -当前打开的文件的基本名称,没有文件扩展名
$ {fileDirname} -当前打开的文件的目录名
$ {fileExtname} -当前打开的文件的扩展名
$ {cwd} -启动时任务运行器的当前工作目录
$ {lineNumber} -活动文件中当前选择的行号
$ {selectedText} -活动文件中的当前选定文本
$ {execPath} -正在运行的VS Code可执行文件的路径
$ {defaultBuildTask} -默认构建任务的名称
这块官网说的很详细,再这边就不再累述:https://code.visualstudio.com/docs/editor/variables-reference
以后直接F5就可以运行了
这些基本上够入门使用了,不同性质的项目或者大些的项目,也就不太用VSCode了
扩:调试的时候虚拟环境被激活,可以自己关闭下:https://www.cnblogs.com/dotnetcrazy/p/15106460.html