前言

什么是计算机语言

计算机就是一台用来计算的机器,人让计算机干什么计算机就得干什么!

需要通过计算机的语言来控制计算机(也就是编程语言)!

计算机语言其实和人类的语言没有本质的区别,不同点就是交流的主体不同!

计算机语言发展经历了三个阶段:

1). 机器语言

  • 机器语言通过二进制编码来编写程序
  • 执行效率好,编写起来太麻烦

2). 符号语言(汇编)

  • 使用符号来代替机器码
  • 编写程序时,不需要使用二进制, 而是直接编写符号
  • 编写完成后,需要将符号转换为机器码,然后再由计算机执行符号转换为机器码的过程称为汇编
  • 将机器码转换为符号的过程,称为反汇编
  • 汇编语言一般只适用于某些硬件,兼容性比较差

3). 高级语言

  • 高级语言的语法基本和现在英语语法类似,并且和硬件的关系没有那么紧密了。也就是说我们通过高级语言开发程序可以在不同的硬件系统中执行
  • 并且高级语言学习起来也更加的容易,现在我们知道的语言基本都是高级语言 如:C、 C++、C#、Java、JavaScript、Python 等..

编译型语言和解释型语言

计算机只能识别二进制编码(机器码),所以任何的语言在交由计算机执行时必须要先转换为机器码,也就是像 print('hello') 必须要转换为类似 1010101 这样的机器码。

根据转换时机的不同,语言分成了两大类:

1). 编译型语言

  • 如:C语言
  • 编译型语言,会在代码执行前将代码编译为机器码,然后将机器码交由计算机执行
    • 执行过程:a(源码) --编译--> b(编译后的机器码)
  • 特点:
    • 执行速度特别快
    • 跨平台性比较差

2). 解释型语言

  • 如:Python JS Java
  • 解释型语言,不会在执行前对代码进行编译,而是在执行的同时一边执行一边编译
    • 执行过程:a(源码)--解释器--> 解释执行
  • 特点:
    • 执行速度比较慢
    • 跨平台性比较好

下面我们切入正题,谈谈Python。

Python的介绍

Python是解释型语言。

Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/),是一种广泛使用的高级编程语言,属于通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。可以视之为一种改良(加入一些其他编程语言的优点,如面向对象)的LISP。作为一种解释型语言,Python的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。相比于C++或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。

Python的用途:

  • WEB应用
  • Facebook 豆瓣
  • 爬虫程序
  • 科学计算
  • 自动化运维
  • 大数据(数据清洗)
  • 云计算
  • 桌面软件/游戏
  • 人工智能

Python开发环境搭建

开发环境搭建就是安装Python的解释器

Python的解释器分类:

  • CPython(官方)

    用c语言编写的Python解释器
  • PyPy

    用Python语言编写的Python解释器
  • IronPython

    用.net编写的Python解释器
  • JPython

    用Java编写的Python解释器

步骤:

1.下载安装包 python-3.6.exe



2.安装(傻瓜式安装, 默认选项..)

安装完成可以看到以下几个程序:

3.打开命令行窗口,输入python 出现如下内容



Python的交互界面

当我们通过Windows命令行来输入Python,所进入到的界面就是Python的交互界面

结构:

版本和版权声明:

Python 3.6.3 (tags/v3.6.3:2c5fed8, Oct  3 2017, 17:26:49) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.

命令提示符:

>>>

在命令提示符后可以直接输入Python的指令!输入完的指令将会被Python的解释器立即执行!

安装Python的同时,会自动安装一个Python的开发工具IDLE,通过IDLE也可以进入到交互模式。但是不同的是,在IDLE中可以通过TAB键来查看语句的提示。

IDLE实际上就是一个交互界面,但是他可以有一些简单的提示,并且可以将代码保存。

注意:交互模式只能你输入一行代码,它就是执行一行,所以他并不适用于我们日常的开发!

仅可以用来做一些日常的简单的测试!

我们一般会将Python代码编写到一个py文件中,然后通过python指令来执行

文件中的代码。

Python和Sublime的整合

1.在Sublime中执行Python代码,按 ctrl + b 可以自动在Sublime内置的控制台中执行

这种执行方式,在某些版本的Sublime中对中文支持不好,并且不能使用input()函数。

2.使用SublimeREPL来运行python代码

如下图:选择SublimeREPL-> Python来执行Python代码





但是这样很麻烦。为方便我们可以设置快捷键,按f5则自动执行当前的Python代码。

如下设置快捷键来执行python代码呢?

找到Preferences-->Key Bindings ,然后复制下面的内容到右边的中括号内。然后保存。

这样我们就可以按F5快捷键来自动执行当前的Python代码了。

{ "keys": ["f5"], "caption": "SublimeREPL:Python","command": "run_existing_window_command", "args":{"id": "repl_python_run","file": "config/Python/Main.sublime-menu"}},

Python的几个基本概念

1.表达式

表达式就是一个类似于数学公式的东西

比如:10 + 5 8 - 4

表达式一般仅仅用了计算一些结果,不会对程序产生实质性的影响

如果在交互模式中输入一个表达式,解释器会自动将表达式的结果输出

2.语句

在程序中语句一般需要完成某种功能,比如打印信息、获取信息、为变量赋值

比如:

print()
input()
a = 10

语句的执行一般会对程序产生一定的影响

在交互模式中不一定会输出语句的执行结果

3.程序(program)

程序就是由一条一条的语句和一条一条的表达式构成的。

4.函数(function)

函数就是一种语句,函数专门用来完成特定的功能

函数长的形如:xxx()

函数的分类:

1). 内置函数

由Python解释器提供的函数,可以在Python中直接使用

2). 自定义函数

由程序员自主的创建的函数

当我们需要完成某个功能时,就可以去调用内置函数,或者自定义函数

函数的两个要素:

1). 参数

()中的内容就是函数的参数

函数中可以没有参数,也可以有多个参数,多个参数之间使用,隔开

2). 返回值

返回值是函数的返回结果,不是所有的函数都有返回值

Python的基本语法

  • 在Python中严格区分大小写
  • Python中的每一行就是一条语句,每条语句以换行结束
  • Python中每一行语句不要过长(规范中建议每行不要超过80个字符)
  • 一条语句可以分多行编写,多行编写时语句后边以结尾
  • Python是缩进严格的语言,所以在Python中不要随便写缩进
  • 在Python中使用#来表示注释,#后的内容都属于注释,注释的内容将会被解释器所忽略

我们可以通过注释来对程序进行解释说明,一定要养成良好的编写注释的习惯

注释要求简单明了,一般习惯上#后边会跟着一个空格

字面量和变量

字面量就是一个一个的值,比如:1,2,3,4,5,6,‘HELLO’

字面量所表示的意思就是它的字面的值,在程序中可以直接使用字面量

变量(variable)变量可以用来保存字面量,并且变量中保存的字面量是不定的

变量本身没有任何意思,它会根据不同的字面量表示不同的意思

一般我们在开发时,很少直接使用字面量,都是将字面量保存到变量中,通过变量来引用字面量

数据类型

数据类型指的就是变量的值得类型,也就是可以为变量赋哪些值

在Python中,能够直接处理的数据类型有以下几种:整数、浮点数、字符串、布尔值、列表、元组、字典、集合。

以后我们详细介绍这几个数据类型。

对象(object)

Python是一门面向对象的语言

  • 一切皆对象!
  • 程序运行当中,所有的数据都是存储到内存当中然后再运行的!
  • 对象就是内存中专门用来存储指定数据的一块区域
  • 对象实际上就是一个容器,专门用来存储数据
  • 像我们之前学习的数值、字符串、布尔值、None都是对象

对象的结构

每个对象中都要保存三种数据

1). id(标识)

  • id用来标识对象的唯一性,每一个对象都有唯一的id
  • 对象的id就相当于人的身份证号一样
  • 可以通过id()函数来查看对象的id
  • id是由解析器生成的,在CPython中,id就是对象的内存地址
  • 对象一旦创建,则它的id永远不能再改变

2). type(类型)

  • 类型用来标识当前对象所属的类型
  • 比如:int str float bool
  • 类型决定了对象有哪些功能
  • 通过type()函数来查看对象的类型
  • Python是一门强类型的语言,对象一旦创建类型便不能修改

3). value(值)

  • 值就是对象中存储的具体的数据
  • 对于有些对象值是可以改变的
  • 对象分成两大类,可变对象 不可变对象
  • 可变对象的值可以改变
  • 不可变对象的值不能改变

变量和对象

  • 对象并没有直接存储到变量中,在Python中变量更像是给对象起了一个别名
  • 变量中存储的不是对象的值,而是对象的id(内存地址),
  • 当我们使用变量时,实际上就是在通过对象id在查找对象
  • 变量中保存的对象,只有在为变量重新赋值时才会改变
  • 变量和变量之间是相互独立的,修改一个变量不会影响另一个变量

类型转换

  • 所谓的类型转换,将一个类型的对象转换为其他对象
  • 类型转换不是改变对象本身的类型,而是根据当前对象的值创建一个新对象

运算符(操作符)

运算符可以对一个值或多个值进行运算或各种操作

比如 + 、-、= 都属于运算符

运算符的分类:

1.算术运算符

2.赋值运算符

3.比较运算符(关系运算符)

4.逻辑运算符

5.条件运算符(三元运算符)

Python入门你要懂哪些?的更多相关文章

  1. 小白必看,Python入门你要懂那些

    Python作为为数不多的全场景开发语言之一,近年来已经获得了越来越多人的关注,而整个IT行业也释放出了大量的Python就业岗位.因此,当前学习Python语言是非常不错的选择,文泽带你进一步走进P ...

  2. Python入门教程完整版(懂中文就能学会)

    前几天给大家分享<从零学会Photoshop经典教程300集>的教程受到了广泛的关注,有人不知道怎么领取,居然称小编为"骗子". 不过小编的内心是强大的,网友虐我千百遍 ...

  3. Python运算符,python入门到精通[五]

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...

  4. Python基本语法,python入门到精通[二]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]我们已经在自己的windows电脑上搭建好了python的开发环境,这篇博客呢我就开始学习一下Python的基本语法.现 ...

  5. Python入门-函数的使用到程序的公布安装

    Python入门-函数的使用到Python的公布安装 本文主要适合有一定编程经验,至少掌握一门编程语言的人查看. 文中样例大多都是简单到认识英文单词就能看懂的水平,主要讲的是Python的总体使用方法 ...

  6. [转][RabbitMQ+Python入门经典] 兔子和兔子窝

    [转][RabbitMQ+Python入门经典] 兔子和兔子窝 http://blog.csdn.net/linvo/article/details/5750987 RabbitMQ作为一个工业级的消 ...

  7. Python入门系列【附】进阶教程

    如题,本篇将讲解Python提升之路:Python作为语法简单易学的语言,入门容易精通却很难,这是共识,那么为什么会有这样的共识?精通Python的难度在哪里? Python拥有简单.形象.直观的语法 ...

  8. Python入门篇-解析式、生成器

    Python入门篇-解析式.生成器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.列表解析式(List Comprehension) 1>.列表解析式语法 语法 [ 返回 ...

  9. Python 入门之 内置模块 -- time模块

    Python 入门之 内置模块 -- time模块 1.time模块 ​ time翻译过来就是时间,这个模块是与时间相关的模块 import time # 内置模块 -- 标准库 (1)time.ti ...

随机推荐

  1. 【RTOS】基于V7开发板的uCOS-III,uCOS-II,RTX4,RTX5,FreeRTOS原版和带CMSIS-RTOS V2封装层版全部集齐

    RTOS模板制作好后,后面堆各种中间件就方便了. 1.基于V7开发板的最新版uCOS-II V2.92.16程序模板,含MDK和IAR,支持uC/Probe https://www.cnblogs.c ...

  2. adb devices无法连接mumu模拟器

    解决方案: 如果你的android环境能够直接访问 adb 的相关指令.只需要把mumu模拟器打开 然后打开cmd -> 输入 adb connect 127.0.0.1:7555 就能直接连上 ...

  3. go语言的错误处理

    1.系统自己抛异常 //go语言抛异常 func test3_1() { l := [5] int {0,1,2,3,4} var index int = 6 fmt.Println(l) l[ind ...

  4. maven工程指定web资源包,创建jsp文件

    进入项目的project structure. 选择web. 在右侧增加web资源包路径

  5. jmap 导出 tomcat 内存快照分析

    登录系统(注意这里启动 tomcat 的用户) # 获取 tomcat 的 pid 号 ps -ef|grep tomcat # 例如这里 pid 号为 13133 jmap -dump:live,f ...

  6. JavaWeb问题记录——在Windows上启动Tomcat后命令行窗口乱码

    JavaWeb问题记录——在Windows上启动Tomcat后命令行窗口乱码 摘要:本文主要记录了在Windows上启动Tomcat后,命令行窗口出现乱码的问题及解决办法. 问题重现 在Windows ...

  7. Last 2 dimensions of the array must be square

    这个报错是因为我们在求解行列式的值的时候使用了: np.linalg.det(D) 但是D必须是方阵才可以进行运算,不是方阵则会报错,我们把之前的行列式更改为方阵就不会再报错了,当然这也是numpy自 ...

  8. 创建密钥并使用密钥ssh登录linux

    创建密钥并使用密钥ssh登录linux 使用密钥对登录ssh简介 通过ssh_keygen胜场公钥和私钥,公钥放在要登录的目标的机器上,私钥放登录发起的机器上. 生成密钥 我是在ubuntu上生成的密 ...

  9. 43-安装 Docker Machine

    前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的.但在真正的环境中会有多个 host,容器在这些 host 中启动.运行.停止和销毁,相关容器会通过网络 ...

  10. 读数笔记_python网络编程3(4)

    4.套接字名与DNS 讨论网络地址,描述将主机名解析为原始IP地址的分布式服务 4.1. 主机名与socket 浏览器汇总一般键入域名.有些域名标识整个机构.如,python.org,而另一些指定了主 ...