一、编程语言的发展史

  1.机器语言(就是010101的二进制数,直接用二进制跟计算机直接沟通交流,直接操作硬件)

    优点:计算机能够直接读懂,速度快

    缺点:开发效率极低

  2.汇编语言(用简单的英文标签来表示二进制数,直接操作硬件)

    优点:开发效率高于机器语言

    缺点:执行效率低于机器语言

  3.高级语言(包括php,c,c++,java,python等)

    1.编译型(类似于谷歌翻译)   c语言就是编译型

      一次性全部翻译,编译过程需要用到编译器

      优点:执行效率高

      缺点:开发效率低

    2.解释型(类似于同声传译)   python

      一行一行翻译(读一行翻译一行)

      优点:开发效率高

      缺点:执行效率低

  学习难度:

      机器语言>>汇编语言>>高级语言

  执行效率:

      机器语言>>汇编语言>>高级语言

  开发效率:

      高级语言>>汇编语言>>机器语言

  

二、python下载安装

  python也可以叫做胶水语言、调包侠

    前面讲到了python属于解释型语言,所以我们要安装python的解释器,打开官网 https://www.python.org/downloads/windows/ 下载中心

  

  测试是否安装成功,打开cmd,运行python(出现截图所示就是安装成功了,这里是安装python3)

  

三、python的第一个程序 

   有两种运行python程序的方式:

      1.交互式(比如在cmd中输入)

        优点:输入内容立刻就有对应的结果

        缺点:无法永久保存数据

      2.命令行(文件的形式)

        优点:可以永久的保存数据

        缺点:运行该文件有点麻烦(因为要输入文件路径)

    运行py文件需要这几个步骤:

      1.将python解释器代码从硬盘读到内存(这步就相当于如果要打开word文档就是点击word图标)

      2.将写好的py文件从硬盘读到内存中(就相当于打开word文档)

      3.解释器解释读取py文件中的内容,解释成计算机能够识别的语言

四、变量  

  1.什么是变量? 

量:衡量、记录事物的状态、特征
变:状态、特征是可以改变的

  2.为什么要有变量?

    帮助你记录保存事物的某种状态或者特征

  变量必须先定义后调用,变量名不要加引号

  通常变量名的命名有两个流派

    1.驼峰体(前端语言推荐的命名方式) userName

    2.下划线(python推荐的命名方式) user_name

  3.变量名的命名规范:(以字母或者下划线_开头)

    1.只能包含数字、字母、下划线

    2.不能以数字开头

    3.关键字不能作为变量名

  4.变量的三要素:

    1.id():返回的是一串数字,这一串数字可以理解为内存地址

    2.type():返回的是该变量对应的数据的类型

    3.value:该变量指向的内存当中数据的值

  5.小整数池

    python实现int的时候有个小整数池。为了避免因创建相同的值而重复申请内存空间所带来的效率问题,python解释器会在启动时创建出小整数池,范围是[-5,256],该范围内的小整数对象会被重复使用。

  在代码编写过程中,写清楚注释很重要

五、垃圾回收机制

  1.引用计数:内存中的数据如果没有任何的变量名与其有绑定关系,那么就会被自动回收

  2.标记清除:当内存快要被某个应用程序占满的时候,会自动触发

  3.分代回收:根据值的存活时间的不同,化为不同的等级,等级越高垃圾回收机制扫描的频率越低

六、常量(不可变的量)

  python里面压根没有常量

  通常将全大写的变量名看做常量(约定俗成的),虽然说是不可改变的量,但是如果要改变的还是可以改变的

    

2019-6-28笔记总结-编程语言发展史和python安装的更多相关文章

  1. Python学习【01】编程语言简介,Python安装及环境变量配置

    编程语言介绍 开发 系统软件开发:Windows,iOS 应用软件开发:淘宝.网易云音乐.QQ 开发语言 高级语言:Python,Java,PHP, c#,GO,ruby,c++      ---&g ...

  2. day02-操作系统、编程语言分类及python安装

    目录 操作系统 编程语言分类 安装python解释器 操作系统 操作系统有什么用 操作系统能接受外部指令转化成0和1,并把一些对硬件的复杂操作简化成一个个简单的接口,作为中间人连接硬件和软件 计算机三 ...

  3. python笔记1-基础概念、python安装使用配置

    Python 1.基础概念 一.什么是python? python是一种面向对象.解释型的计算机语言,它的特点是语法简洁.优雅.简单易学.在1989诞生,Guido(龟叔)开发.这里的python并不 ...

  4. 「FFT」题单(upd 2019.4.28)

    持续更新(last upd 2019.4.28) ZJOI2014 力 [题目链接] 解法 对原式进行转换,然后卷积FFT套上去求解就可以了. 推导过程简洁版: \[F_i=\sum_{j<i} ...

  5. Alpha冲刺(5/10)——2019.4.28

    所属课程 软件工程1916|W(福州大学) 作业要求 Alpha冲刺(5/10)--2019.4.28 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪 ...

  6. 2019.3.28&2019.3.30考试

    2019.3.28 : 肥肠爆芡,因为这场考试的题太屑了,所以我咕咕了 Upd on 2019.3.30 压进来一篇(因为都没啥意义) 2019.3.30 : 全机房读错题+没有大样例=T2全体爆炸 ...

  7. 2019.2.28&2019.3.1 考试

    因为没A/改几道题,就一起写了 题目在LOJ上都能找到 2019.2.28 100+20+12 前两个小时一直在睡觉+想题也没思路,我太菜了 T1 洗衣服 分开处理出洗衣服和烘干的时间,然后一边正着排 ...

  8. 梦想MxWeb3D协同设计平台 2019.02.28更新

    梦想MxWeb3D协同设计平台 2019.02.28更新 SDK开发包下载地址: http://www.mxdraw.com/ndetail_10130.html 在线演示网址: http://www ...

  9. Beta冲刺(7/7)——2019.5.28

    所属课程 软件工程1916|W(福州大学) 作业要求 Beta冲刺(7/7)--2019.5.28 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪万里 ...

随机推荐

  1. ent 基本使用十六 聚合

    ent 提供了聚合处理 一个group by + 聚合的处理(age以及name字段) package main ​ import ( "context" ​ "< ...

  2. 洛谷p2370yyy2015c01的U盘题解

    没什么特殊的想法 就是看自己很久没有更新关于题解类的文章了而已 (其实这是我好久之前做的, 只是把它从洛谷博客搬到了这里而已) 题目 首先分析题目要二分 他长成这个亚子太二分了 所以就要二分 最好是先 ...

  3. 【数论】[因数个数]P4167樱花

    题目描述 求不定方程 \(\frac {1}{x} + \frac{1}{y} = \frac{1}{n!}\)的正整数解的个数 \(n \leq 100^6\) Solution 化简得 \(x * ...

  4. 【DP】【期望】$P1850$换教室

    链接 题目描述 有 \(2n\) 节课程安排在$ n$ 个时间段上.在第 \(i\)(\(1 \leq i \leq n\))个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在 ...

  5. nginx 反向代理之 proxy_buffering

    proxy_buffering主要是实现被代理服务器的数据和客户端的请求异步. 为了方便理解,我们定义三个角色,A为客户端,B为代理服务器,C为被代理服务器. 当proxy_buffering开启,A ...

  6. java NIO面试题剖析

    转载:https://mp.weixin.qq.com/s/YIcXaH7AWLJbPjnTUwnlyQ 首先我们分别画图来看看,BIO.NIO.AIO,分别是什么? BIO:传统的网络通讯模型,就是 ...

  7. hdu2094产生冠军[STL set]

    目录 题目地址 题干 代码和解释 参考 题目地址 hdu2094 题干 代码和解释 题意可以这样理解:一个人只要没输过就可以是冠军,如果没输过的人恰为一位,那就认他为冠军,若少于或多于一位,则判定没有 ...

  8. [技术博客]Pyqt中View类别容器和Widget类别容器的区别

    Pyqt中View类别容器和Widget类别容器的区别 简介 在beta迭代中,我们选择用pyqt5来重写alpha迭代中使用tkinter库编写的界面. ​ 按钮之类的与tkiner使用无异,在显示 ...

  9. dubbo源码分析之基于SPI的强大扩展

    https://blog.csdn.net/luoyang_java/article/details/86609045 Dubbo采用微内核+插件体系,使得设计优雅,扩展性强.那所谓的微内核+插件体系 ...

  10. web页面引入字体

    一.常见web字体 TrueType (.ttf) Windows和Mac系统最常用的字体格式,其最大的特点就是它是由一种数学模式来进行定义的基于轮廓技术的字体,这使得它们比基于矢量的字体更容易处理, ...