为什么使用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安装方式:

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",并输入以下命令

1 ssl_verify: true

2

3 channels:4 - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

5 - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

6

7 show_channel_urls: true

为什么要为每个项目建立独立的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”

下一步就是在该环境下,安装一些自己需要的python包,以满足科学计算的需求

conda安装python包的方式:

用conda安装:“conda install numpy”    #推荐

用pip安装:     “pip install numpy”         #不推荐

我常用的python包有:numpy,pandas,matplotlib,scipy,netCDF4,jupyter,obspy

前四个比较大众,后三个比较小众。

python win10还是linux_在win10的Linux子系统(WSL)上搭载python编程环境相关推荐

  1. 在Win10的Linux子系统下搭建ESP32的开发环境

    在Win10的Linux子系统下搭建ESP32的开发环境 一.介绍 1.Windows的Linux子系统  win10进行了内置工作于命令行的Linux子系统功能,WIN10用户只需要开启Linux子 ...

  2. win10linux子系统root权限,电脑win10系统如何将linux子系统wsl切换到root权限

    电脑win10系统如何将linux子系统wsl切换到root权限 有的时候我们需要将linux子系统切换到root权限进行操作,今天小编就告诉大家电脑win10系统如何将linux子系统wsl切换到r ...

  3. 利用 Windows 子系统 Linux(WSL)开发 Python 环境搭建

    利用 Windows 子系统 Linux(WSL)开发 Python 一.启用适用于 Linux 的 Windows 子系统 二.安装 Linux 分发版 三.安装并配置 Visual Studio ...

  4. window命令行 linux,Windows命令行:起源 直到引入Windows下的linux子系统(WSL)

    本文从Windows命令行的起源及终端的演变,到我们在未来Windows发行版中对Windows控制台及命令行进行全面更新,引入Windows下的linux子系统(WSL).在本文中,我们将对命令行最 ...

  5. Win10安装Linux子系统WSL(ubuntu2204)及图形桌面xfce4

    WSL简介 什么是 WSL ? 在计算机上使用 Linux 系统通常有两种方式:使用虚拟机或安装 Linux 系统.使用虚拟机时开销较大,直接使用 Linux 系统虽然可以带来流畅体验,但与 Wind ...

  6. 在哪个Linux发行版上运行python,怎么在linux上运行python

    Linux默认是已经安装好了Python程序 目前来说,大多数的Linux发行版是安装了两个版本的Python程序 一个是Python 2.x 一个是Python 3.x 一些系统自带的程序文件需要P ...

  7. Windows10开启Linux子系统WSL

    文章目录 简介 步骤 1. 开启开发人员模式 2. 开启 Linux 子系统 初试 Ubuntu所在目录 MobaXterm连接 互传文件 直接安装 遇到的坑 参考文献 简介 软件丰富适合日常使用的 ...

  8. python修改手机默认语言_修改 CentOS 6.x 上默认Python的方法

    最近在工作中遇到一个问题,就是有一个功能希望在各种服务器上实现,而服务器上的系统版本可能都不一样,有的是 CentOS 6.x,有的是 CentOS 7.x . 需要说明的一点是,CentOS 6.x ...

  9. python代码编辑器android_三款可以在安卓手机上运行Python代码的软件

    导 语 READ 我相信大家平时大多数时间肯定都是在电脑上面敲Python代码,有时候出门外或者不方便使用电脑的时候,你是否曾想用手机就能编写和运行Python代码呢?本文将会介绍3款不同的安卓软件帮 ...

最新文章

  1. [HTTP协议]基础篇-待完结
  2. 程序员毕业两年,三年工作经验是怎么来的? | 每日趣闻
  3. MyBatis魔法堂:ResultMap详解
  4. 一步一步SharePoint 2007之十七:解决实现Form认证后无法再用SharePoint Designer编辑网站的问题...
  5. Python二分查找算法
  6. try except python3.7_python3.X中try/except
  7. 怎么让员工服从管理_为什么现在的员工执行力和服从性越来越差,管理一严格就辞职?...
  8. C语言 - strcpy和strncpy的编程实现及总结
  9. 普朗克黑体辐射定律python代码实现
  10. 罗德里格斯(Rodrigues)旋转方程推导
  11. 使用Pytorch DataLoader快捷封装训练数据、测试数据的X与Y
  12. 关于viewpager 里嵌套 listview 同时实现翻页功能的“java.lang.IllegalStateException: The specified child...异常处理...
  13. Oracle PL/SQL之NEXT_DAY - 取得下一个星期几所在的日期
  14. 重设OS X (macOS)系统帐户密码的几种方法
  15. web应用微信扫码绑定用户
  16. VS2019++QT5.12.10+PCL1.11.1+VTK8.2.0+opencv(camke3.18.0)环境搭配及演示实例
  17. 利用viewbag把数据对象传到前端并转换成json对象,及解决json字符串被转义问题
  18. 使用element-ui实现表格分页
  19. JAVA 删除File文件中的内容。
  20. KNN+MFCC实现方言识别

热门文章

  1. boost::thread模块实现默认执行器的测试程序
  2. boost::sort::sample_sort相关的测试程序
  3. boost::outcome模块coroutine_support相关的测试程序
  4. boost::mpi::wait_any相关用法的测试程序
  5. boost::hana::unfold_right用法的测试程序
  6. GDCM:gdcm::Dicts的测试程序
  7. boost::core实现交换std::type_info
  8. ITK:在灰度图像中标记连接的组件
  9. OpenCV用代码解释单应性的基本概念
  10. QT的QDesignerPropertyEditorInterface类的使用