在win10的Linux子系统(WSL)上搭载python编程环境
为什么使用WSL进行python编程
WSL,全称Windows Subsystem for Linux。简言之,win10提供了一个子Linux系统,可以解决虚拟机和双系统的系统之间阻隔的问题而不影响win10本身的应用。
对于win10上建立的Linux子系统,如Ubuntu,本身可能会自带了python编译器,可以编译运行一些简单的python脚本。
命令“which python”通常可以查看本机python的版本和安装位置,安装位置通常位于:/usr/bin,
有些安装了其他大型编译器的时候,还会自带不同版本的编译器,因此用命令“ls /usr/bin/python*”可以查看本机已安装的所有python类型。
win10中设置Linux子系统方式如下:
Windows下请先开启WSL,并且安装Ubuntu:
1.管理员权限打开 PowerShell. 在开始菜单中,输入PowerShell,右键Windows PowerShell选择管理员权限运行(或者按下快捷键win+R,然后输入cmd打开命令提示符)
2.在Windows PowerShell command window 中或命令提示符中, 拷贝并复制以下代码以开启WSL功能:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
3. 打开微软商店,搜索Ubuntu,选择Ubuntu并进行安装,此后,进入Linux系统的方式有三:第一,Windows PowerShell中输入bash,第二,命令提示符中输入bash,第三,直接打开Ubuntu应用。
为什么选择anaconda下的python编程环境
以上的python编译器虽然可以运行部分.py文件,但是有些包没有安装,所有含有numpy/pandas等库的文件编译时会自动报错。
在安装各种包的时候,有时不同包之间错综复杂的依赖关系会使一个包的安装过程变成一系列包的安装。而conda可以很好的解决路径依赖问题。
此外,conda还可以建立起一些相对独立编程环境,每个环境是一个独立的工程,从而避免各种版本的package之间相互污染。
anaconda安装方式:
1.下载64-Bit Installer for anaconda 网址为https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2020.07-Linux-x86_64.sh
2.更换到下载目录,打开terminal,输入命令: “bash Anaconda3-2020.07-Linux-x86_64.sh”,然后安装过程中按照提示一路yes即可。
当打开终端时最开始出现(base)的时候,anaconda就安装成功了,对于超级用户root,通常conda安装在“/root/anaconda” 根目录下,对于普通用户,通常安装在 “/home/用户名/anaconda”之下。
下一步是把anaconda配置更新,这一步的主要作用是把源更新,默认的国外源下载速度非常慢。更改方式有两种:
anaconda配置更新
方法1:在(base)中输入命令
1 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
2 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
3 conda config --remove channels defaults
4 conda config --set show_channel_urls yes
如果在此后的软件安装中出现下载过慢的问题可以参考我的下一篇文章
方法2:找到.condarc文件输入镜像源
对于root用户,输入“cd ~/.condarc”,对于普通用户,输入“cd /home/用户名/.condarc",并输入以下命令
ssl_verify: true channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ show_channel_urls: true
如果该步骤出现网络连接失败,请参考解决:https://www.cnblogs.com/liangxuran/p/13507487.html
为什么要为每个项目建立独立的conda环境
如前所述,之所以建立起一个独立的python编译环境而不是使用base是为了避免各种package版本之间相互污染。
建议针对不同的项目每一次都进行不同的环境进行区隔。
新建/激活/退出独立conda环境的方式:
新建独立conda环境命令:“conda create --name conda_name python=3”或“conda create -n conda_name_01 python=3”
激活该环境的命令:“conda activate conda_name_01”
退出该环境的命令:“conda deactivate”
复制该环境的命令:“conda create -n conda_name_01 --clone conda_name_02”
删除该环境的命令:“conda remove -n conda_name_01 --all”
如果出现如下报错,需要在./condarc文件中更新源。解决方案参考https://www.cnblogs.com/liangxuran/p/13507487.html
下一步就是在该环境下,安装一些自己需要的python包,以满足科学计算的需求
conda安装python包的方式:
用conda安装:“conda install numpy” #推荐
用pip安装: “pip install numpy” #不推荐
我常用的python包有:numpy,pandas,matplotlib,scipy,netCDF4,jupyter,obspy
前四个比较大众,后三个比较小众。
在win10的Linux子系统(WSL)上搭载python编程环境的更多相关文章
- win10配置linux子系统使用python绘图并显示--WSL使用GUI输出
默认情况下,Win10的linux子系统(WSL)是只能使用命令行程序的.所有图形界面的程序都无法执行. 通过为Win10安装XWindows协议的终端应用,可以让Win10成为一台XWindow终端 ...
- win10安装linux子系统(wsl)
win10安装linux子系统(wsl) 1.打开Microsoft Store 方式一:在电脑左下角打开 方式二:在电脑左下角的搜索里里输入Microsoft Store 打开Microsoft S ...
- Win10 安装 Linux 子系统
Win10 安装 Linux 子系统 因为最近要使用Linux搭服务器,但是用远程的话延迟很烦,用双系统切换很麻烦,用虚拟机又会有点卡,刚好Windows10最近更新了正式版的WSL(windows下 ...
- 如何优雅地使用win10的Linux子系统
转自: http://blog.csdn.net/u010053050/article/details/52388663 http://www.rehack.cn/techshare/devtools ...
- win10下Linux子系统开启ssh服务
原文:win10下Linux子系统开启ssh服务 为了便于交流共同学习,博主QQ群242629020(stm32-MCU认认真真交流群) 欢迎批评指导!!!电梯:https://jq.qq.com/? ...
- 手把手教你启用Win10的Linux子系统(超详细)
原文:手把手教你启用Win10的Linux子系统(超详细) 版权声明:转载请保留出处,谢谢! https://blog.csdn.net/zhangdongren/article/details/82 ...
- win10的linux子系统安装及使用
最近需要用到linux但是又不想装双系统,正好win10推出了linux子系统,省事了,自己也是煞费苦心才整明白 1.首先你要是很新的win10版本(1607及已上),这样才有下面的步骤 依次在 设置 ...
- [Linux] 启用win10下Linux子系统
转载请注明出处:https://www.cnblogs.com/lialong1st/p/12004080.html 最新的win10引入了Linux子系统,这样就免去了安装虚拟机或者双系统的麻烦. ...
- Windows Sublime Text 配置Linux子系统(WSL)下的 gcc/g++ 编译环境
0. 简介(若已了解背景可以跳过此部分) Windows 10 Build 14316以上版本中加入了"Windows系统的Linux子系统"(Windows Subsystem ...
随机推荐
- ~~并发编程(十一):GIL全局解释锁~~
进击のpython ***** 并发编程--GIL全局解释锁 这小节就是有些"大神"批判python语言不完美之处的开始 这一节我们要了解一下Cpython的GIL解释器锁的工作机 ...
- 一个startforresult的例子
https://blog.csdn.net/qq_32521313/article/details/52451364
- 2018年5月15日的sqlite安装和数据库记录
sqlite数据库安装在d:\sqlite_files运行sqlite3查看数据表,命令,.tables 数据库文件 d:\sqlite_files\device.db create table de ...
- 感性认识JWT
常见的认证机制 今天我么聊一聊JWT. 关于JWT,相信很多人都已经看过用过,他是基于json数据结构的认证规范,简单的说就是验证用户登没登陆的玩意.这时候你可能回想,哎哟,不是又那个session么 ...
- seaborn分类数据可视化:散点图|箱型图|小提琴图|lv图|柱状图|折线图
一.散点图stripplot( ) 与swarmplot() 1.分类散点图stripplot( ) 用法stripplot(x=None, y=None, hue=None, data=None, ...
- let、const、var的区别
1.使用var声明的变量,其作用域为全局或者该语句所在的函数内,且存在变量提升现象. 下面使用node.js演示,也可以插入到html文件中使用以下代码 var a = 10; function te ...
- Hexo 静态博客指南:建站教程(上)
本文最初发布于我的个人博客Bambrow's Blog,采用 BY-NC-SA 许可协议,转载请注明出处.若有后续更新,将更新于原博客.欢迎去我的博客阅读更多文章! 本文详细记录一下站点建立过程,以便 ...
- Python os.tcgetpgrp() 方法
概述 os.tcgetpgrp() 方法用于回与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组.高佣联盟 www.cgewang.com 语法 tcgetpgrp()方法语法格 ...
- [USACO09NOV]硬币的游戏 博弈 dp
LINK : coin game 这道题 超级经典去年这个时候我就看过题目了 但时至今日还不会/cy 觉得在做比赛的题目的时候少写省选的题目 多做水题多做不难也不简单的题目就好了. 由于我是真的不会博 ...
- ABAP 动态备份自建表数据到新表(自建表有数据的情况下要改字段长度或者其他)
当abaper开发好一个程序给用户使用一段时间后,发现某个字段的长度需要修改,但数据库表中已经存在很多数据,冒然直接改表字段可能会导致数据丢失,这种问题的后果可能非常严重. 所以我想到先复制出一个新表 ...