认识Python&基础环境搭建
前言
作为.NET Coder可能.NET Core是现阶段首要学习方向,但是说实在的对Core真的不感冒。
原因有几点:
1.公司项目底层需要的一部分库,Core还不支持。
2.同样的需求,.NET能满足的情况下,为何要用Core再实现一遍呢?如果不是为了特殊的跨平台需求,我觉得根本没必要。
3.Core的社区太羸弱(无意冒犯),它出现实在有点晚,生态还不完整,所以打算观望一段时间。
本人目前对人工智能方面的技术非常感兴趣,Python作为人工智能的首选语言........所以没办法了。
认识Python
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的弱类型语言。设计具有很强的可读性,相比其他语言经常使用英文关键字和标点符号,它具有比其他语言更具特色的语法结构。
1.Python 是一种解释型语言 : 这意味着开发过程中没有了编译这个环节。
2.Python 是交互式语言 :这意味着可以在一个Python提示符,直接互动执行写你的程序。
3.Python 是面向对象语言 :这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
Python正式诞生于1991年,而Python的解析器有多个语言实现版本,常用的是Cpython(官方版本,C语言实现)、Jython(可运行在Java平台)、IronPython(可运行在.NET和Mono平台)、PyPy(Python实现,支持JIT即时编译)。
Python目前有两个版本:Python2和Python3。向下是不兼容的,有着些许的区别。现阶段大部分公司用的是Python2,而官方是推荐Python3,我个人因为并不打算转向Python开发,所以选择Python3学习。
环境搭建
Python支持Linux、MacOS、Winodws平台下开发,我这里只讲Winodws平台的环境搭建,自个也有Linux虚拟机和环境,但还不太适应,所以考虑学习成本,尽可能专注Python上,减少其它知识点的干扰(等我对Linux熟悉以后再说)。
1.认识Anacondata
首先我们需要了解python的本质,当我们在使用python语言编写程序之前需要下载一个python解释器, 这才是python的核心,如果没python解释器, python代码是没办法运行的。同时开发过程中还需要其它的开源包。
初学Python的很多人会去官网下载安装python解释器,然后需要的外部包再一个个引用。其实完全没有必要。
Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项。conda 是开源包(packages)和虚拟环境(environment)的管理系统。
开源包管理:可以使用 conda 来安装、更新 、卸载工具包 ,并且它更关注于数据科学相关的工具包。在安装 anaconda 时就预先集成了像 Numpy、 pandas、Scikit-learn、Scipy 这些在数据分析中常用的包。
虚拟环境管理:在conda中可以建立多个虚拟环境,用于隔离不同项目所需的不同版本的工具包,以防止版本上的冲突。
2.Anaconda安装
进入 https://www.anaconda.com/download/ 下载Anaconda安装包

开始安装步骤


勾选【Add Anaconda to my PATH environment varable(将Anacondata添加环境变量)】

3.配置环境变量
我的电脑==》右键==》属性。点击【环境变量】

双击【Path】

添加三个path路径(均在Anaconda的安装路径上)。

4.创建虚拟环境
因为conda下载文件要到国外服务器,速度比较慢。所以我们要添加一个清华的镜像服务器来解决。
打开CMD或Anaconda Promp:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
避免和基础环境冲突,我们新建虚拟环境,可以在虚拟环境中安装不同的python版本或python工具包,不需要是也可删除,保证基础环境不受干扰。
打开CMD或Anaconda Promp:
conda create –n jonins_py36 python=3.6
这里jonins_py36是环境名称可自行设置,python=3.6是版本,可以设置其它版本。
若提示:Proceed ([y]/n)? y,输入y回车。
如图所示,表示环境配置成功。

尝试触发新建的环境:
activate jonins_py36
会显示如下,表示已载入此环境。

5.安装Python工具包
工具包是可以选择性的安装在我们创建的环境中,例如要安在我们的虚拟环境中则需先进入虚拟环境(activate 环境名称),然后安装。不进入的话则默认安装在基础环境。如安装scipy工具包命令:
conda install scipy
6.Anacondata命令
切换环境:activate jonins_py36
所有环境:conda env list
可以输入python打开解释器输入import scipy 如果报错则scipy包未安装,exit()推出解释器。
查看环境包的信息:conda list
安装包:conda install scipy
卸载包:conda remove scipy
导出环境,,将包信息存入yaml文件中.:conda env export > jonins_py36.yaml
导入环境,当需要重新创建一个相同的虚拟环境时可以用:conda env create -f jonins_py36.yaml
常用的命令如下:
activate //切换到base环境 activate jonins_py36 //切换到jonins_py36环境 conda create -n jonins python=3 //创建一个名为jonins的环境并指定python版本为3的最新版本 conda env list //列出conda管理的所有环境 conda list //列出当前环境的所有包 conda install numpy //安装numpy包 conda remove numpy //卸载numpy包 conda remove -n jonins --all //删除jonins环境及下属所有包 conda update numpy //更新numpy包 conda env export > jonins.yaml //导出当前环境的包信息 conda env create -f jonins.yaml //用配置文件创建新的虚拟环境
集成开发环境(IDE:Integrated Development Environment)
1.集成开发环境选择
1.Vim+Python,上个月最开始学习使用的这种,很不适应,并且配置真的是一头雾水,真正python大神所用(Vim设计理念很吊,有它的独特之处,分几种常用的模式,这个以后再说)。
2.Subline+Python ,对我而言跟Vim+Python没什么区别......
3.PyCharm 是由 JetBrains 打造的一款 Python IDE,支持 macOS、 Windows、 Linux 系统。功能有 : 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。
4.Visual Studio Code由微软在2015启动,一个运行于 Mac OS X、windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器。
Anaconda中已经集成Visual Studio Code,Anaconda安装完成后可以直接在Anaconda Nagvigator界面中安装Vscode。安装好之后,就可以使用vscode来进行python的学习。
5.Visual Studio不用多说了,用过的都说好,作为世界最强大的IDE,我个人的首选。
2.Visual Studio&Hello Word
运行【Visual Studio Installer】。将Python开发和数据科学和分析应用程序 勾选即可。

安装完毕后,Visual Studio会自动引入我们前面安装的Anaconda环境。
创建一个解决方案,用于Pytong的学习,添加Python项目。

可以看得项目的Python环境已经集成,如果需要可以右键更换Anaconda的环境。


写一行Python的代码:
print("Hello World")
运行结果:

开发环境搭建完成。
结语
环境搭建,不管任何平台网上有很多资料,写这篇的目的是希望自己能有始有终,就像当初学习C#。
同样的路程,但是可能是完全不同的风景,期待ing......
认识Python&基础环境搭建的更多相关文章
- Python基础环境搭建
一.编程语言 1.解释型语言:每执行一次程序就要将代码翻译一次,如Java.JavaScript.VBScript.Perl.Python.Ruby.MATLAB 等都是解释型语言 2.编译型语言:程 ...
- selenium + python 自动化测试环境搭建
selenium + python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操 ...
- python selenium 环境搭建(一)
elenium 虽然过了这么多年,但是到目前为止依然是比较流行的自动化框架了,还有很多的初学者在学习,所以根据自己的时间将把相关的资料汇总一下,下面首先我们需要搭建一下基础环境. 首先自己本身比较笨, ...
- 机器学习1—简介及Python机器学习环境搭建
简介 前置声明:本专栏的所有文章皆为本人学习时所做笔记而整理成篇,转载需授权且需注明文章来源,禁止商业用途,仅供学习交流.(欢迎大家提供宝贵的意见,共同进步) 正文: 机器学习,顾名思义,就是研究计算 ...
- python selenium-webdriver 环境搭建(一)
selenium 虽然过了这么多年,但是到目前为止依然是比较流行的自动化框架了,还有很多的初学者在学习,所以根据自己的时间将把相关的资料汇总一下,下面首先我们需要搭建一下基础环境. 首先自己本身比较笨 ...
- (一)Hyperledger Fabric 1.1安装部署-基础环境搭建
在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助.本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LTS ...
- Linux CentOS Python开发环境搭建教程
CentOS安装Python 1.CentOS已经自带安装了2.x版本,先尝试python命令检查已安装的版本.如果你使用rpm.yum或deb命令安装过,请使用相对命令查询. 2.复制安装文件链 ...
- dos基础+环境搭建基础理论
dos基础 市面上两大操作系统 windows.*nix(unix.linux.mac.bsd(安全性比较高)) 后三种都属于unix的衍生版本 linux是为了兼容unix开发的,最后开放了源代码 ...
- python开发环境搭建
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...
随机推荐
- [20170927]关于hugepages.txt
[20170927]关于hugepages.txt --//今天测试hugepages与内核参数nr_overcommit_hugepages,才发现HugePages_Surp表示什么? --// ...
- C#语言————第四章 深入C#的String类
*********类型转换**************** Convert与Parse的区别: Convert可以将任何内置类型转换为其他任何内置类型 XX.Parse:只能将字符串转换为XX类型例如 ...
- MySQL重做日志相关
Ⅰ.事务的实现 这里我们先抛出答案,通过答案再展开分析 特性 实现 A(原子性) redo C(一致性) undo I(隔离性) lock D(持久性) redo/undo 本节针对redo展开分 ...
- Fedora 29 使用 SCL (Software Collections)
在社区中SCL 由Centos 项目进行维护,所以我们使用CentOS 7 SCL源.CentOS SCL中提供了devtoolset-7-gcc-c++,版本正好为 gcc version 7.3. ...
- ELK-elasticsearch-6.3.2部署
参考博客:linux下ElasticSearch.6.2.2集群安装与head.Kibana.X-Pack..插件的配置安装 参考博客:ELK5.5.1 插件安装实践纪要(head/bigdesk/k ...
- VRS待解决的问题——原因及解决方案
1.持续滤波失败(查看文档) 通过查看文档及代码 2.GAL卫星数为0的网元及原因 3.判断发的是否是单个基站(网元未固定),多个用户进行测试 4.网元固定率(采用文件输出) 5.是否频繁重复初始化 ...
- 【Beta Scrum】冲刺!4/5
1. 今日完成情况 人员 学号 分工 是否完成 完成情况 胡武成 031502610 完成登录注册api,协助web端完成api Y 基本逻辑写完,短信部分还在修改中,预计明天早上便能完成 郭剑南 0 ...
- C#泛型约束where T : class 解释
这是参数类型约束,指定T必须是Class类型. .NET支持的类型参数约束有以下五种:where T : struct | T必须是一个结构 ...
- Android之activity总结
http://www.cnblogs.com/lyp3314/archive/2011/11/10/2244971.html 一.什么是activity Activity 是用户接口程序,原则上它会提 ...
- javascript中call,apply,bind的用法对比分析
这篇文章主要给大家对比分析了javascript中call,apply,bind三个函数的用法,非常的详细,这里推荐给小伙伴们. 关于call,apply,bind这三个函数的用法,是学习java ...