编程语言的发展史:

  1.机器语言  站在计算机角度,直接用二进制跟计算机直接沟通,直接操控硬件

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

    缺点:开发效率低

  2.汇编语言  站在计算机角度,用简单的英文标签标识二进制,直接操作硬件

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

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

  3.高级语言  站在人的角度 php,c++,c#,python,go

    1.编译型:(类似谷歌翻译)

      整段代码一次性翻译,翻译之后多次运行,编译的过程需要用到编译器    

      一次性的编译成平台相关的机器语言文件,运行时脱离开发环境,运行效率高;

      与特定平台相关,一般无法移植到其他平台;

      优点:执行效率较解释型高

      缺点:开发效率较解释型低

    2.解释型:(同声传译)python

      代码一行一行翻译

      解释型语言每次运行都需要将源代码解释成机器码并执行,效率较低;

      只要平台提供相应的解释器,就可以运行源代码,所以可以方便源程序移植

      优点:开发效率较编译型高

      缺点:运行效率较编译型低

  ps:学习难度:机器语言>>>汇编语言>>>高级语言

    执行效率:机器语言>>>汇编语言>>>高级语言

    开发效率:高级语言>>>汇编语言>>>机器语言

python崇尚优美,清晰,简单

涉及领域:

  web开发,爬虫,云计算,人工智能,自动化运维,科学运算,游戏开发

下载python解释器>>>设置环境变量(系统查找文件所有路径的配置)

多版本共存要找到安装目录下的python.exe文件,复制一份,命名python2.exe或python3.exe,保留原版

python程序:

  python程序运行的两种方式:

    1.交互式:

      优点:输入内容立刻就有对应的返回值

      缺点:无法永久保存

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

      优点:可以永久保存

      缺点:运行文件较麻烦

  ps:文件的后缀名仅仅只是给人看的。

  运行一个py文件需要走的步骤:

    1.将python解释器代码从硬盘读取到内存

    2将py文件从硬盘读取到内存

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

    (如果是普通文件,仅仅只会将内容展示给用户查看,不会检测翻译内容)

IDE开发编辑器:

  pycharm仅仅是一个方便我们开发python程序的工具

--------------------------------------------------------------------------------------------

注释是代码之母!

变量:

  1.什么是变量:

    量:衡量/记录事物的状态/特征

    变:这种状态特征是可以变化的

  2.为什么要有变量:

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

  3.变量的定义:

    变量名:是访问变量的唯一方式

    赋值符号(=):建立变量名与变量值的绑定关系

    变量的值:通过变量名访问

    变量必须先定义再引用,变量名不加引号

  4.变量的三要素:

    1.  id() :返回一串数字,可以看作的变量值的地址

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

    3.  value() :该变量执行内存当中数据的值

name = 'waller'
age = 24
print(name)
print(age)
print(id(name))
print(type(name))
print(id(age))
print(type(age))

输出:
waller
24
2236154225360
<class 'str'>
1958047936
<class 'int'>

变量三要素

  5.变量命名规范:

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

    2.不能以数字开头

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

    4.变量名对值有描述性(见名知意)

    变量名两大流派:

    驼峰体:userName

    下划线体:user_name

  6.常量:

    python内没有常量,通常将全大写的变量名看作常量,python程序员约定俗成的

  7.小整数池:

    内存中已经规划出了固定的空间存放

    

a = 257
b = 257
id(a)
2919979319120
id(b)
2919979576208
c = 256
d = 256
id(c)
1642892736
id(d)
1642892736

小整数池

垃圾回收机制

  1.引用计数:内存中的数据没有任何变量名绑定时,会被回收

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

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

    

《了解python》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. Java-Readable

    import java.nio.*; import java.util.*; import static net.mindview.util.Print.*; public class RandomW ...

  2. Python基础 — eval 函数的作用

    eval函数就是实现list.dict.tuple与str之间的相互转化str函数把list,dict,tuple转为为字符串 # 字符串转换成列表a = "[[1,2], [3,4], [ ...

  3. xxx商城之商品管理

  4. mysql中常见正则表达式的应用

    查找name字段中以'st'为开头的所有数据: mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st'; 查找name字段中以'ok ...

  5. App开放接口API安全性之Token签名Sign的设计与实现

    前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要用户提供一些信息,比如用户名密码等, ...

  6. Spring Cloud Alibaba学习笔记(18) - Spring Cloud Gateway 内置的过滤器工厂

    参考:https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.1.0.RELEASE/single/spring-clou ...

  7. iOS - app 进行安全加固

    研究了大半年逆向工程了,没在博客做记录,最近看到篇,跟自己的想法不谋而合,摘要下: 运行在越狱设备上的 iOS app,非常容易遭到破解分析,这里我列举一些可以加大破解难度的方法,希望有所帮助. 一些 ...

  8. 安卓开发之常见Handler API和 定时器的使用

    package com.lidaochen.test; import android.os.Bundle; import android.os.Handler; import android.supp ...

  9. mysql 模糊查询like小结

    以不完整的条件进行查询 因为条件是模糊的 所以叫模糊查询,可以对有相同信息的数据快速归类 . like  运算符:可以很好的通过%和-两种通配符对数据进行筛选查询 %(所有)放在条件前中后.可查询包含 ...

  10. 【Java】锁机制

    参考 https://blog.csdn.net/varyall/article/details/79698145 <深入理解Java虚拟机> 锁状态:无锁.偏向锁.轻量级锁.重量级锁(具 ...