【Python】从入门到上头—简介(1)

文章目录

  • 一.编译型语言和解释型语言的区别
  • 二.Python是什么,Python简介
  • 三.Python优缺点
  • 四.Python能干什么,Python的应用领域
  • 五.Python编程环境搭建
    • 1.windows安装
    • 2.Linux(Ubuntu)系统安装Python
  • 六.集成开发环境:PyCharm下载和安装教程(包含配置Python解释器)
    • 0.下载
    • 1.创建Python项目

一.编译型语言和解释型语言的区别

  • 高级编程语言编写的源码,人类能够轻松理解,,而计算机只认识二进制指令,源码就是天书,根本无法识别。源码要想执行,必须先转换成二进制指令。
    • 所谓二进制指令,也就是由 0 和 1 组成的机器码,能被计算机直接识别并执行。

然而,究竟在什么时候将源代码转换成二进制指令呢?不同的编程语言有不同的规定:

  • 有的编程语言要求必须提前将所有源代码一次性转换成二进制指令,也就是生成一个可执行程序(比如 Windows 下的 .exe 文件)比如C语言、C++、Golang、汇编语言等,它们都属于编译型语言,使用的转换工具称为编译器
  • 有的编程语言可以一边执行一边转换,需要哪些源代码就转换哪些源代码,不会生成可执行程序,比如Python、JavaScript、PHP、Shell等,这类编程语言称为解释型语言,使用的转换工具称为解释器

简单地理解,编译器和解释器其实就是一个“翻译工具”,对源代码进行“翻译”是一个很复杂的过程,大致包括词法分析、语法分析、语义分析、性能优化、生成可执行文件等五个步骤,期间涉及到复杂的算法和硬件架构

编译型语言和解释型语言的执行流程如下所示:
在这里插入图片描述

总结

  • 编译型语言来说,在执行前先通过编译器将源码转换成 CPU 可识别的机器码文件(比如 Windows 下的 .exe 文件)
  • 解释型语言无需预先编译,而是由解释器逐行对源码进行解释,一边解释一边执行
  • 半编译半解释型语言,比如Java 和 C#等,这类语言将源代码先转换成一种中间文件(字节码文件),然后再将`中间文件拿到虚拟机中执行

区分

  • 编译型语言
    • 通过专门的编译器,将所有源代码一次性转换成特定平台(Windows、Linux、macOS等)的机器码(以可执行文件的形式存在)。
    • 编译一次后,脱离了编译器也能运行,并且运行效率高
      - 可移植性差,不够灵活
  • 解释型语言
    • 通过专门的解释器,根据需要可以将部分或全部源代码转换成特定平台(Windos、Linux、macOS等)的机器码。
    • 跨平台性好,通过不同的解释器,将相同的源代码解释成不同平台下的机器码。
    • 一边执行一边转换,效率较低

二.Python是什么,Python简介

Python 的标志(Logo)
在这里插入图片描述

  • Python 语言是Guido 在ABC 语言的基础上发展而来,其设计的初衷是成为 ABC 语言的替代品。ABC 语言虽然是一款功能强大的高级语言,遗憾的是,由于 ABC 语言不开放的原因,导致它没有得到普及应用。基于这个考虑,Guido 在开发 Python 之初就决定将其开源。`
  • Python 中不仅添加了许多 ABC 语言没有的功能,同时,还为其设计了各种丰富而强大的库,利用这些 Python 库,程序员可以把使用其它语言制作的各类模块(尤其是C语言和 C++)很轻松地“黏连”在一起,因此 Python 又常被称为“胶水”语言

由于人工智能、大数据等行业的发展,使得 Python 近几年增姿迅猛,甚至把 C 语言、C++ 和 Java 甩在身后 ,成为编程语言排行榜冠军。
在这里插入图片描述

三.Python优缺点

优点

  • Python 特点就是简单

    • 语法非常简洁明了,即便是非软件专业的初学者,也很容易上手。
    • 和其它编程语言相比,实现同一个功能,Python 语言的实现代码往往是最短的
  • 语法简单

    • 和传统的 C/C++、Java、C# 等语言相比,Python 对代码格式的要求没有那么严格,这种宽松使得用户在编写代码时比较舒服
  • 开源的:开源,也即开放源代码,意思是所有用户都可以看到源代码。

    • 程序员使用 Python 编写的代码是开源的。

      • 比如我们开发了一个 BBS 系统(即网络论坛),放在互联网上让用户下载,那么用户下载到的就是该系统的所有源代码,并且可以随意修改。这也是解释型语言本身的特性,想要运行程序就必须有源代码。
    • Python 解释器和模块是开源的。

      • 官方将 Python 解释器和模块的代码开源,是希望所有 Python 用户都参与进来,一起改进 Python 的性能,弥补 Python 的漏洞,代码被研究的越多也就越健壮。
  • 免费的

  • 高级语言

    • 这里所说的高级,是指 Python 封装较深,屏蔽了很多底层细节,比如 Python 会自动管理内存(需要时自动分配,不需要时自动释放)。
  • 解释型语言,能跨平台

  • 功能强大(模块众多)

缺点

  • 运行速度慢
    • 运行速度慢是解释型语言的通病,Python 速度慢不仅仅是因为一边运行一边“翻译”源代码,还因为 Python 是高级语言,屏蔽了很多底层细节。这个代价也是很大的,Python 要多做很多工作,有些工作是很消耗资源的,比如管理内存。
    • Python 的运行速度几乎是最慢的,不但远远慢于 C/C++,还慢于 Java。但硬件性能的提升可以弥补软件性能的不足。
  • 代码加密困难
    • 不像编译型语言会被编译成可执行程序(这个编译过程就相当于对源码加密),对于 Python 来说是直接运行源代码,因此对源码加密是比较困难的。
    • 这个缺点仅限于你要编写的软件需要卖给别人挣钱的时候。好消息是目前的互联网时代,靠卖软件授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。

四.Python能干什么,Python的应用领域

  • Web应用开发

  • 自动化运维

    • 所谓自动化运维,就是利用开源自动化工具来管理服务器,比如业界流行的 Ansible(基于Python开发),它能帮助运维工程师解决重复性的工作。
    • Python提供了诸多方便与服务器交互的软件包,比如 Python 标准库中包含了多个可用来调用操作系统功能的库。
      • pywin32 能访问 Windows 的 COM 服务以及其他 Windows API
      • 使用 IronPython,我们能够直接调用 .Net Framework。
  • 人工智能领域

    • 人工智能的核心是机器学习,机器学习的研究可分为传统机器学习和深度学习,它们两者被广泛的应用于图像识别、智能驾驶、智能推荐自然语言处理等应用方向。
    • Python 在机器学习和深度学习方面有着非常出众的优势。总结原因大致有以下几点:
      • 目前世界上优秀的人工智能学习框架,比如 Google 的 TransorFlow(神经网络框架)``、FaceBook 的 PyTorch(神经网络框架)以及开源社区的 Karas 神经网络库等,都是用 Python 实现的;
      • 微软的CNTK(认知工具包)也完全支持 Python,并且该公司开发的 VS Code,也已经把 Python 作为第一级语言进行支持;
    • Python 擅长进行科学计算和数据分析,支持各种数学运算,可以绘制出更高质量的 2D 和 3D 图像
  • 网路爬虫

    • 提供很多服务于编写网络爬虫的工具,例如 urllib、Selenium 和 BeautifulSoup 等,还提供了一个网络爬虫框架 Scrapy
  • 游戏开发

  • 科学计算

以下是一个基本的 Python 学习路径:
先学习 Python 的基础语法,包括变量、数据类型、控制结构、函数、模块、文件操作等。
学习 Python 的常用模块,比如:NumPyPandasMatplotlibScikit-learn 等实用的数据处理和分析工具。
学习 PythonWeb 开发框架,比如:FlaskDjango 等。
学习 Python 的爬虫框架,比如:ScrapyBeautifulSoup 等。
学习 Python 的深度学习框架,比如:TensorFlowPyTorch 等。
学习 Python 的自然语言处理框架,比如:NLTKSpaCy 等。
学习 Python 的其他高级应用,比如:机器学习、数据挖掘、人工智能等。
当然,学习路径可以根据个人兴趣和需求进行调整。

五.Python编程环境搭建

1.windows安装

  • 在 Windows 上安装 Python 和安装普通软件一样简单,下载安装包以后猛击“下一步”即可。

    • Python 安装包下载地址:https://www.python.org/downloads/
  • 打开该链接,可以看到有两个版本的 Python,分别是 Python 3.x 和 Python 2.x,如下图所示:
    在这里插入图片描述

    • Python 3.x 是一次重大升级且没有考虑与 Python 2.x 的兼容性,导致很多项目无法顺利升级 Python 3.x,只而大部分刚刚起步的新项目又使用了 Python 3.x,所以目前官方需要维护两个版本的 Python。

建议初学者直接使用 最新版本Python 3.x。该3.x版本为例演示 Windows 下的 Python 安装过程。

  1. 点击上图中的版本号或者“Download”按钮进入对应版本的下载页面,滚动到最后即可看到各个平台的 Python 安装包

    在这里插入图片描述

    对前缀的说明

    • Windows x86-64开头的是 64 位的 Python 安装程序;
    • 以Windows x86开头的是 32 位的 Python 安装程序。

    对后缀的说明:

    • embeddable zip file 表示.zip格式绿色免安装版本,可以直接嵌入(集成)到其它的应用程序中;
    • executable installer 表示.exe格式可执行程序,这是完整的离线安装包,一般选择这个即可;
    • web-based installer 表示通过网络安装的,也就是说下载到的是一个空壳,安装过程中还需要联网下载真正的 Python 安装包。
  2. 这里我选择的是“Windows x86-64 executable installer”,也即 64 位的完整的离线安装包

    • 双击下载得到的 python-3.x.x-amd64.exe,就可以正式开始安装 Python 了
      在这里插入图片描述

      请尽量勾选Add Python 3.8 to PATH,这样可以将 Python 命令工具所在目录添加到系统 Path 环境变量中,以后开发程序或者运行 Python 命令会非常方便。

    Python 支持两种安装方式,默认安装和自定义安装:

    • 默认安装会勾选所有组件,并安装在 C 盘
    • 自定义安装可以手动选择要安装的组件,并安装到其它盘符
  3. 这里我们选择自定义安装,将 Python 安装到常用的目录,避免C盘文件过多。点击“Customize installation”进行入下一步,选择要安装的 Python 组件。 没有特殊要求的话,保持默认即可,也就是全部勾选。
    在这里插入图片描述

  4. 点击“Next”继续,选择安装目录。
    在这里插入图片描述

  5. 选择好你常用的安装目录,点击“Install”,等待几分钟就可以完成安装

  6. 安装完成以后,打开 Windows 的命令行程序(命令提示符),在窗口中输入python命令,如果出现 Python 的版本信息,并看到命令提示符>>>,就说明安装成功了
    在这里插入图片描述

  7. 运行 python 命令启动的是 python 交互式编程环境,我们可以在>>>后面输入代码,并立即看到执行结果

    在这里插入图片描述

  8. 按下Ctrl+Z快捷键,或者输入 exit() 命令即可退出交互式编程环境,回到 Windows 命令行程序。

2.Linux(Ubuntu)系统安装Python

绝大多数的 Linux 发行版(Ubuntu、CentOS 等)都默认自带了 Python。有的 Linux 发行版甚至还会自带两个版本的 Python,例如最新版的 Ubuntu 会自带 Python 2.x 和 Python 3.x。

  1. 下载源代码

    • Python 官方下载地址:https://www.python.org/downloads/

    • 打开链接,可以看到各个版本的 Python:
      在这里插入图片描述

    • 点击上图中的版本号或者“Download”按钮进入对应版本的下载页面,滚动到最后即可看到各个平台的 Python 安装包。

      在这里插入图片描述

  2. 在“Gzipped source tarball”处单击鼠标右键,从弹出菜单中选择“复制链接地”,即可得到.tgz格式的源码压缩包地址。
    执行以下命令:

    wget https://www.python.org/ftp/python/3.x.x/Python-3.8.1.tgz
    

    解压源码包:

    tar -zxvf Python-3.x.x.tgz
    
  3. 使用 make 工具进行编译:

    ./configure  --prefix=/usr/localmake&&sudo make install#这里的--prefix=/usr/local用于指定安装目录(建议指定)。如果不指定,就会使用默认的安装目录。
    
  4. 输入 Python 指令,验证是否已安装成功。

  5. 小技巧:python命令默认调用的是 Python 2.x 开发环境,如果你习惯使用 Python 3.x,感觉每次输入python3命令有点麻烦,那么你可以修改配置,让python命令转而调用 Python 3.x 开发环境

    unlink /usr/bin/python
    ln -s /usr/bin/python3.x /usr/bin/python
    

六.集成开发环境:PyCharm下载和安装教程(包含配置Python解释器)

0.下载

1.下载进入PyCharm官方下载地址:https://www.jetbrains.com/pycharm/download/
在这里插入图片描述
需要专业版那啥插件的也可以找我,可以永久免费使用。在这里插入图片描述
2.双击.exe文件进行安装。
在这里插入图片描述
3.点击 Next 后,选择安装路径页面(尽量不要选择带中文和空格的目录)选择好路径后,点击 Next 进行下一步
在这里插入图片描述

4.进入 Installation Options(安装选项)页面,全部勾选上。点击 Next
在这里插入图片描述

5.4.进入 Choose Start Menu Folder 页面,直接点击 Install 进行安装
在这里插入图片描述
5.等待安装完成
在这里插入图片描述

1.创建Python项目

选择 New Project 新建项目
在这里插入图片描述

3.我们修改 Location (项目目录路径),自己起个名my_pythonProject
在这里插入图片描述

3.创建. py 文件,选择项目点击 New-> Python File,然后输入文件名为 test
在这里插入图片描述

4.右键选择Run‘test’
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/86848.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于飞腾芯片的设计与调试入门指导

一、啥是自主可控 国产CPU现在厂家细算起来其实有很多,现在华为、小米也在做自己的CPU,瑞芯微、全志等的SoC现在也是广泛应用。但是真正能叫做自主可控的CPU厂商,只有6家。那啥是自主可控?首先来不严谨的讲下现在数字芯片是怎么做的设计。FPGA大家都知道,可以通过Verilog…

Squaretest 1.8.3 安装激活

1. 插件下载 2. 离线安装 3. 插件激活

学习ts(八)模块与命名空间

模块 ts与es5一样,任何包含顶级import和export的文件都被当成一个模块。相反的,如果一个文件不带有顶级的import和export声明,那么他的内容被视为全局可见的。 在两个文件中声明相同属性名的变量,会出现错误信息 可以使用export…

Docker使用mysql:5.6和 owncloud 镜像,构建一个个人网盘,安装搭建私有仓库 Harbor

一、使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。 [rootlocalhost ~]# docker pull mysql:5.6[rootlocalhost ~]# docker pull owncloud[rootlocalhost ~]# docker run -itd --name mysql --env MYSQL_ROOT_PASSWORD123456 mysql:5.6 d45cc5b95f00692881baaf…

uniapp小程序位置信息配置

uniapp 小程序获取当前位置信息报错 报错信息: getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json 需要在manifest.json配置文件中进行配置:

【Docker 】Docker 客户端,容器使用,启动容器,启动已停止运行的容器,停止一个容器,进入容器

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&#x1f…

Unittest 笔记:unittest拓展生成HTM报告发送邮件

HTMLTestRunner 是一个unitest拓展可以生成HTML 报告 下载地址:GitHub: https://github.com/defnnig/HTMLTestRunner HTMLTestRunner是一个独立的py文件,可以放在Lib 作为第三方模块使用或者作为项目的一部分。 方式1: 验证是否安装成功&…

Zblog博客网站搭建与上线发布:在Windows环境下利用cpolar内网穿透实现公网访问的指引

文章目录 1. 前言2. Z-blog网站搭建2.1 XAMPP环境设置2.2 Z-blog安装2.3 Z-blog网页测试2.4 Cpolar安装和注册 3. 本地网页发布3.1. Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1. 前言 想要成为一个合格的技术宅或程序员,自己搭建网站制作网页是绕…

提升Java开发效率:掌握HashMap的常见方法与基本原理

文章目录 前言一、概述1. 认识HashMap2. HashMap 的作用和重要性3. 简要讲解 HashMap 的基本原理和实现方式 二、了解 HashMap 创建及其的常见操作方法1. HashMap的创建2. 添加元素 put()3. 访问元素 get()4. 删除元素 remove()5. 计算大小 size()6. 迭代 HashMap for-each7.判…

【C++】C++ 引用详解 ⑨ ( 常量引用初始化 | C / C++ 常量分配内存的四种情况 )

文章目录 一、常量引用初始化1、使用 " 普通变量 " 初始化 " 常量引用 "2、使用 " 常量 / 字面量 " 初始化 " 常量引用 "3、C / C 常量分配内存的四种情况4、代码示例 - 常量引用初始化 一、常量引用初始化 1、使用 " 普通变量 &…

消息中间件 介绍

MQ简介 MQ,Message queue,消息队列,就是指保存消息的一个容器。具体的定义这里就不类似于数据库、缓存等,用来保存数据的。当然,与数据库、缓存等产品比较,也有自己一些特点,具体的特点后文会做详细的介绍。 现在常用…

使用 ChatGPT 创建 PowerPoint 演示文稿

让 ChatGPT 成为您的助手来帮助您编写电子邮件很简单,因为众所周知,它非常能够生成文本。很明显,ChatGPT 无法帮助您做饭。但您可能想知道它是否可以生成文本以外的其他内容。在上一篇文章中,您了解到 ChatGPT 只能通过中间语言为您生成图形。在这篇文章中,您将了解使用中…