1-编程基础及Python环境部署

本文介绍了编程基础,强调Python作为一种高级语言的简洁性。文章涵盖了计算机的基本概念,包括程序、CPU、计算机语言的分类,以及高级语言的发展。接着详细讲解了Python语言,包括Python的解释器、版本区别、安装方法、pyenv多版本管理工具以及pip命令的使用。最后,引导读者开始第一个Python程序的学习。
摘要由CSDN通过智能技术生成


1 编程基础

        首先,我们普及一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如下载一个MP3,编写一个文档等等,而计算机干活的CPU只认识机器指令,所以,尽管不同的编程语言差异极大,最后都得’翻译’成CPU可以执行的机器指令。而不同的编程语言,干同一个活,编写的代码量,差距也很大。
        比如,完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。
        所以Python是一种相当高级的语言。
        你也许会问,代码少还不好?代码少的代价是运行速度慢,C程序运行1秒钟,Java程序可能需要2秒,而Python程序可能就需要10秒。
        那是不是越低级的程序越难学,越高级的程序越简单?表面上来说,是的,但是,在非常高的抽象计算中,高级的Python程序设计也是非常难学的,所以,高级程序语言不等于简单。但是,对于初学者和完成普通任务,Python语言是非常简单易用的。连Google都在大规模使用Python,你就不用担心学了会没用。
        用Python可以做什么?可以做日常任务,比如自动备份你的MP3;可以做网站,很多著名的网站包括YouTube就是Python写的;可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。总之就是能干很多很多事啦。下面我们了解一下计算机的基础概念

1.1 基本概念

        程序:是一组能让计算机识别和执行的指令。
        计算机五大部件:输入设备输出设备运算器控制器存储器,各部分主要作用:

  • 运算器:完成各种算数运算、逻辑运算、数据传输等数据加工处理
  • 控制器:控制程序的执行
  • 存储器:用于记忆程序和数据,例如内存
  • 输入设备:将数据或者程序输入到计算机中,例如鼠标、键盘
  • 输出设备:将数据或程序的处理结果展示给用户,例如显示器、打印机等

        注:CPU有运算器和控制器组成,其中还有寄存器以及多级缓存,其中我们所熟知的L1、L2缓存是每个CPU核心独占的,而L3缓存则是所有核心共享的,缓存的速度依次降低,新版的CPU还会把北桥芯片集成在CPU中。
        计算机语言:人与计算机之间交互的语言,机器语言、汇编语言等属于早期语言的代表,机器语言由一定位数组成的二进制0和1的序列组成,这中语言非常晦涩,难以理解,难以记录,而汇编语言则借助了一些助记符来替代机器指令,虽然好记了一点,但还是难以学习,后来经过时代的变迁,各大伟人的突出贡献,慢慢的针对不同场景的编程语言共同绽放。

1.2 语言分类

        从距离机器和人类可读的两种方向,主要分为低级语言高级语言
        从运行方式来看又分为编译型语言解释型语言

  • 低级语言:面向的机器的语言,比如机器语言、汇编语言,不同的及其不能通用。
  • 高级语言:接近人类可读的自然和数字结合的计算机语言,由编译程序转换成机器指令来进行执行,我们只需要关注如何书写源程序,剩下编译的事情就交给编译器进行处理。
  • 编译语言:把代码转换成目标及其的CPU指令
  • 解释语言:解释后转换成字节码,运行在虚拟机上,解释器执行中间代码
    language
            语言越高级,越接近人类的自然语言和数学语言,越低级则越能让及其理解,高级语言和低级语言之间需要的一个转换的工具:编译器、解释器,例如C、C++等语言的源代码需要本地编译,而Java、Python、C#的源代码需要被解释器编译成中间代码,在虚拟机上运行

1.3 高级语言的发展

        高级语言根据发展历程主要分为四个阶段或者说是四种类型:非结构化结构化面向对象函数式

  • 非结构化语言:编号或标签、GOTO、子程序可以有多个入口和出口,有分支、循环。
  • 结构化语言:任何基本语句只允许是唯一入口和出口,有顺序、分支、循环、废弃GOTO
  • 面向对象的语言:更加接近人类认知世界的方式,万事万物抽象成对象,对象间关系抽象成类和继承。而类具有封装、继承、多态等特性
  • 函数式语言:属于一种古老的编程范式,应用在数据计算、并行处理等场景,在这种语言中,函数是’一等公民’,利用函数的特性,还有更高级的比如高阶函数等。

2 程序

        什么是程序呢?一般我们所说的程序是:算法+数据结构。可以总结出如下特点:

  1. 数据是一切程序的核心
  2. 数据结构是数据在计算机中的类型和组织方式
  3. 算法是处理数据的方式,算法有优劣之分

3 python的语言介绍

        Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。
        和C语言相比:C语言适合开发那些追求运行速度、充分发挥硬件性能的程序。而Python是用来编写应用程序的高级编程语言。
Python的优点:

  • 为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,被形象地称作“内置电池(batteries included)”。用Python开发,许多功能不必从零编写,直接使用现成的即可,除了内置的库外,Python还有大量的第三方库,也就是别人开发的,供你直接使用的东西。当然,如果你开发的代码通过很好的封装,也可以作为第三方库给别人使用。

Python的缺点:

  • 运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快,但是大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。
  • 代码不能加密。如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

另外Python还是一种动态编译的、强类型的语言,那么什么是动态语言,什么是强类型语言呢?

  • 静态编译语言:实现声明变量类型,类型不能再改变,编译时检查
  • 动态编译语言:不用事先声明类型,随时可以赋值为其他类型,但编程时不能准确确定是什么类型,很难推断
  • 强类型语言:不同类型之间操作,必须先强制类型转换为同一类 比如print(1+‘a’),这种是无法执行的
  • 弱类型语言:不同类型间可以操作,自动隐士转换,比如javascript中Console
    .log(1+‘a’)

4 Python的解释器

        Python这种高级语言需要编译成字节码然后由Python虚拟机(解释器)去执行的,针对解释器,有多种不同的版本。

  • 官方的CPython: C语言开发,最广泛的Python解释器
  • IPython:一个交互式、功能增强的CPython
  • PyPy:Python语言写的Python解释器,并且针对性的进行了优化,比如JIT技术,动态编译Python代码
  • Jpython:Python的源码编译成Java的字节码,跑在JVM上
  • IronPython:与Jpython类似运行再.Net平台上的解释器,Python代码被编译成.Net的字节码

        虽然列举了这么多编译器,但是目前主流的还是官方提供的Cpython,但pypi由于使用Python语言编写,针对性的进行了许多优化,据说速度可以达到Cpython的10倍以上,建议后期可以研究一下

5 Python版本区别

        Python是很多Linux系统默认安装的语言,以Centos为例由于其yum包管理工具使用的是Python开发,所以其内置了Python2.x版本,但是Python目前已经发展到了3.7版本了,并且Python官方对2.x的支持也快到期,所以建议学习ython的3.x版本。
        Python 3.x的在本质上和Python 2.x有很大的变化,2.x的程序是不能直接在3.x的版本上运行的,它们的主要区别有:

  • 语句函数化。例如print的打印,在3.x中是个函数,要打印的内容会被当作参数传递进入,而2.x中的含义是print语句打印元祖
  • 整除。在3.x中,/为自然除,//为整除。2.x中/和//都为整除。
  • input函数。3.x中把2.x中的raw_input舍去,功能合并到input函数中去。
  • round函数。在3.x中的取整变为距离最近的偶数
  • 字符串统一使用unicode。2.x中如果想要输入中文,还需要在文件头显示声明(_*_coding:utf-8 _*_)
  • 异常的捕获、抛出的语法改变

6 Python安装

不同平台需要安装不同版本的Python,比如windows,需要用exe的应用程序,而Linux可以有源码编译安装,或者yum安装。

6.1 windows安装

安装方法
  windows由于都是图形界面,这里就不一一截图了,只文字说明安装步骤。

1、下载安装包
访问 https://www.python.org/ 在 Downloads标签页下选择 windows,然后根据自己需求,下载对应的 `Windows x86-64 executable installer` 版本
 
2、安装
双击下载好的 Windows x86-64 executable installer,一直next即可。
# 安装路径默认即可,不要自作聪明修改
 
3、配置环境变量
在安装程序中选择 add to PATH,就是把python命令安装在PATH变量中,让我们可以在任意地方通过命令访问,如果忘记选择,也可以通过下面的方法进行设置
右击我的电脑 -- 属性 -- 高级系统设置 -- 环境变量 -- 编辑 PATH 变量 -- 添加 python 的安装路径 C:\Python36 (以分号隔开)-- 确定

4、测试
打开 cmd 
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值