Python 介绍和环境准备

一、概述

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的解释性编程语言。

  • Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。

  • Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。

  • Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。

  • Python 是初学者的语言:Python 对初级程序员而言,非常友好,非常容易入门。

在这里插入图片描述

二、Python 应用领域

Python 作为一种功能强大的编程语言,因其简单易学而受到很多开发者的青睐。那么,Python 的应用领域有哪些呢?

Python 有着非广泛的应用,几乎所有大中型互联网公司都在使用 Python,例如国外的 Google、Youtube、Dropbox,国内的百度、新浪、搜狐、腾讯、阿里、网易、淘宝、知乎、豆瓣、汽车之家、美团等等,Python 帮助它们完成了各种各样的任务。

1) Web应用开发

在 Web 开发领域,Python 绝对是一颗冉冉升起的新星。尽管 PHP、JS 目前依然是 Web 开发的主流语言,但 Python 上升势头非常猛劲。尤其随着 Python 的 Web 开发框架逐渐成熟(比如 Django、Flask、Tornado、Web2py 等等),程序员可以更轻松地开发、管理复杂的 Web 程序。
在这里插入图片描述

2)自动化运维

  • 所谓自动化运维,实际上就是利用一些开源的自动化工具来管理服务器,比如业界流行的 Ansible(基于Python开发),它能帮助运维工程师解决重复性的工作。

  • Python 作为一种脚本语言,提供了诸多方便与服务器交互的软件包,比如 Python 标准库中包含了多个可用来调用操作系统功能的库。

  • 一般来说,Python 编写的系统管理脚本,无论是可读性,性能、还是代码重度和扩展性等方面,都要优于 shell 语言编写的脚本。

3)网路爬虫

  • Python 语言很早就用来编写网络爬虫。Google 等搜索引擎公司大量地使用 Python 语言编写网络爬虫。

  • 从技术层面上将,Python 提供有很多服务于编写网络爬虫的工具,例如 urllib、Selenium 和 BeautifulSoup 等,还提供了一个网络爬虫框架 Scrapy。

【温馨提示】爬虫不限于任何语言,只不过python在爬虫领域更具优势,因为有丰富的类库和工具函数。

4)人工智能领域

  • 人工智能是当前非常火的一个研究方向,如果要评选当前最热门、工资最高的 IT 职位,那么一定非人工智领域的工程师莫属,但是要求也是不低的,跟算法紧密关联。

  • 人工智能的核心是机器学习,机器学习的研究可分为传统机器学习和深度学习,它们两者被广泛的应用于图像识别、智能驾驶、智能推荐、自然语言处理等应用方向。

  • 在众多编程语言中 Python 绝对是人工智能的首选语言,这是因为 Python 在机器学习和深度学习方面有着非常出众的优势。可以这么说,人工智能已经无法离开 Python 的支持,总结原因大致有以下几点:

    1. 目前世界上优秀的人工智能学习框架,比如 Google 的 TransorFlow(神经网络框架)、FaceBook 的 PyTorch(神经网络框架)以及开源社区的 Karas 神经网络库等,都是用 Python 实现的;
    2. 微软的 CNTK(认知工具包)也完全支持 Python,并且该公司开发的 VS Code,也已经把 Python 作为第一级语言进行支持;
    3. Python 擅长进行科学计算和数据分析,支持各种数学运算,可以绘制出更高质量的 2D 和 3D 图像。

5)科学计算

自 1997 年,NASA 就大量使用 Python 进行各种复杂的科学运算。并且,和其它解释型语言(如 Shell、JS、PHP)相比,Python 在数据分析、可视化方面有相当完善和优秀的库,例如 NumPy、SciPy、Matplotlib、pandas 等,这可以满足 Python 程序员编写科学计算程序的需求。

三、Python 环境准备

下载地址:https://www.python.org/downloads/

1)Linux 平台安装 Python

linux环境的话,安装python就非常简单了,一般centos7自带了python2,而centos8自带了python3,就算没有自带,安装也是非常简单,安装命令如下:

# 新查看系统是否有可用的python3安装包
yum list python3
# 如果没有可用的python3 安装包,则先安装一个 epel-release 的软件包,装上了 EPEL之后,就相当于添加了一个第三方源。
yum -y install epel-release
# 安装python3
yum install -y python3 python3-devel
# 安装pip
yum install -y python3-pip

【温馨提示】

  • python-dev或python-devel称为是python的开发包,其中包括了一些用C/Java/C#等编写的python扩展在编译的时候依赖的头文件等信息。
  • 比如我们在编译一个用C语言编写的python扩展模块时,因为里面会有#include<Python.h>等这样的语句,因此我们就需要先安装python-devel开发包。
  • 如果想要安装其它版本的python,可以选择离线安装,这里就不讲怎么离线安装python了,其实离线安装也是非常简单的。

2)Window 平台安装 Python

下载地址:https://www.python.org/downloads/windows/

把exe安装包下载下来就是傻瓜式安装了,非常检查,有两种安装方式,一种是自动安装包含一些工具,一种是自定义安装。
在这里插入图片描述

3)安装 python IDE(PyCharm)

下载地址:https://www.jetbrains.com/pycharm/download/#section=windows
这里安装社区版,专业版是需要收费的。其实社区版也够用了。有条件的可以选择专业版,或者去网上找专业版的破解版。安装也是傻瓜式的安装了。

在这里插入图片描述

4)PyCharm 关联 Python 环境

File-》Settings-》Project:项目名称-》Python Interpreter
在这里插入图片描述
在这里插入图片描述
添加python环境
在这里插入图片描述
在这里插入图片描述

5)python virtual environment

1、Python 虚拟环境介绍

Python 虚拟环境是一个隔离/独立的python开发环境,和系统python环境可以完全隔离,互不相关,相当于多了一个python开发环境。

python virtual environment优缺点?

  • 优点:每个虚拟环境之间,以及虚拟环境和系统环境之间是完全隔离的,不同虚拟环境中,你可以安装不同版本的模块,就仿佛你可以同时拥有N多个不同的python开发环境。
  • 缺点:每次进入某个虚拟环境之前,都要使用source命令激活。每次使用完,都要使用deactivate命令退出。

2、 安装虚拟环境

python有两个模块可以用于创建和管理python虚拟环境:

  • venv;
  • virtualenv;

其中,venv模块在python3.3以上的版本可以使用,而virtualenv在python2.7+和python3.3+都可以使用。

默认的系统python中是没有安装以上两个工具的,需要使用以下命令安装:

#安装venv
sudo yum install python3-venv

#安装virtualenv
pip install virtualenv
#或者
pip install virtualenv

3、简单使用

#安装python2.7虚拟环境
virtualenv /home/test/env

#安装python3.7虚拟环境
virtualenv --python=python3.7 /home/test/env3

使用venv

venv只有python3可以使用,因此只能创建python3的虚拟环境,创建命令如下:

python3 -m venv /home/test/env3

【温馨提示】其中,python3 -m venv是死命令,最后的安装路径自己指定。

4、激活与退出虚拟环境

【激活虚拟环境】
安装好虚拟环境之后,每次使用该虚拟环境前需要使用source命令激活它。假设前面我在/home/test/env3/目录下安装了python3.5的虚拟环境,现在我使用以下命令激活它:

python3 -m venv /home/test/env3
source /home/test/env3/bin/activate

【退出虚拟环境】
使用完该虚拟环境之后,你需要在命令行输入deactivate命令来退出该虚拟环境:

deactivate
# 执行上面的命令之后就回到了正常的系统python环境中。
# 由于你创建该虚拟环境的目的是为了跑某个项目的程序,现在该项目做完了,不需要该虚拟环境了,你可以把该虚拟环境直接删除
rm -r /home/test/env3

Python的介绍和环境准备就先到这里了,有疑问的小伙伴环境给我留言,也可以关注我的公众号【大数据与云原生技术分享】进行技术交流~

posted @ 2023-01-27 16:23  大数据老司机  阅读(237)  评论(0编辑  收藏  举报