1999年,吉多·范罗苏姆向DARPA提交了一条名为”Computer Programming for Everybody“的资金申请,并在后来说明了他对Python的目标:

  • 一门简单直观的语言并与主要竞争者一样强大
  • 开源,以便任何人都可以为它做贡献
  • 代码像纯英语那样容易理解
  • 适用于短期开发的日常任务

计算机不能直接理解任何除机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言,计算机才能执行程序。将其他语言翻译成机器语言的工具,被称为编译器

编译器翻译的方式有两种:一个是编译,另外一个是解释。两种方式之间的区别在于翻译时间点的不同。当编译器以解释方式运行的时候,也称之为解释器

  • 编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。如CC++
  • 解释型语言:解释型语言编写的程序不进行预先编译,以文本方式存储程序代码,会将代码一句一句直接运行。在发布程序时,看起来省了道编译工序,但是在运行程序的时候,必须先解释再运行

编译型语言和解释型语言对比

  • 速度——编译型语言比解释型语言执行速度快
  • 跨平台性——解释型语言比编译型语言跨平台性好

⛄Python 概述

👀Python特点

  • Python 是完全面向对象的语言
  1. 函数、模块、数字、字符串都是对象,在Python中一切皆对象

  2. 完全支持继承、重载、多重继承

  3. 支持重载运算符,也支持泛型设计

  • Python 拥有一个强大的标准库,
  1. Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。
  2. Python 社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖科学计算、人工智能、机器学习、Web开发、数据库接口、图形系统多个领域。

👀Python程序执行方式

  • Python解释器
# 使用Python2.x解释器
python xxx.py
# 使用Python3.x解释器
python3 xxx.py

# 其他语言Python解释器
CPython # 官方版本的C语言实现
Jython # 可以运行在Java平台
IronPython # 可以运行在.NET和Mono平台
PyPy # Python实现的,支持JIT即时编译
  • 交互式运行Python程序

直接在终端中运行解释器,而不输入要执行的文件名;在PythonShell中直接输入Python的代码,会立即看到程序执行结果。优缺点:适合于学习/验证Python语法或者局部代码;代码不能保存,不适合运行太大的程序。

# 退出官方的解释器
# (1) 直接输入exit()
>>> exit()
# (2)使用热键退出
# 在python解释器中,使用热键ctrl+d可以退出解释器
  • IPython

Ipython中的“I”代表交互interactive

特点:IPython是一个python的交互式shell,比默认的python shell好用得多。IPython是基于BSD开源的。

  1. 支持自动补全;
  2. 自动缩进;
  3. 支持bash shell命令;
  4. 内置了许多很有用的功能和函数。

单行注释,行注释,以#开头

多行注释,块注释,一对连续的三个引号

⛄Python基础知识(快速入门)

👀标识符和关键字

标识符就是程序员定义变量名、函数名。

命名规则:在Python中,标识符(名称)只能由字母、数字和下划线(_)构成;不能以数字开头;不能与关键字重名;区分大小写。

关键字就是在Python内部已经使用的标识符;关键字具有特殊的功能和含义;开发者不允许定义和关键字相同名字的标识符。

# 通过以下命令查看可以查看Python中的关键字
import keyword # import关键字可以导入一个“工具包”
print(keyword.kwlist)

👀变量

变量是表示(或指向)特定值的名称。例如,可以使用名称X来表示6。不同于其它一些语言,使用Python变量前必须给它赋值,因为Python变量没有默认值。

# Python中的标识符是区分大小写的
x = 6 # 赋值,表示将6赋给了变量x,等号(=)用来给变量赋值;
# 变量赋值之后,就可在表达式中使用它

在定义变量时,为了保证代码格式,=的左右应该各保留一个空格;在Python中,如果变量名需要两个多个单词组成时,可以按照以下方式命名:

  • 每个单词都使用小写字母;
  • 单词与单词之间使用_下划线连接,例如:first_name/last_name

驼峰命名法,当变量名是由两个或多个单词组成时,还可以利用驼峰命名法来命名。

小驼峰式命名法:第一个单词以小写字母开始,后续单词的首字母大写。例如:firstName/lastName

大驼峰式命名法:每一个单词的首字母都采用大写字母。例如:FirstName/LastName

👀变量的类型

首先,在内存中创建一个变量,会包括:

  • 变量的名称
  • 变量保存的数据
  • 变量存储数据的类型
  • 变量的地址

在Python中定义变量是不需要指定类型,数据类型可以分为数字型和非数字型;

数字型 非数字型
整型(int) 字符串(string
浮点型(float) 列表(list
布尔型(boolTrue非0、False 元组(tuple不能修改)
复数型(主要用于科学计算) 字典(dict:键和值)

👀不同类型变量之间的计算

  1. 数字型变量之间可以直接计算

    Python中,两个数字型变量是可以直接进行算术运算的,如果变量是bool型,在计算时:

    • True对应的数字是1

    • False对应的数字是0

  2. 字符串变量之间使用+拼接字符串

    在Python中,字符串之间可以使用+拼接生成新的字符串。

    first_name = "张"
    last_name = "三"
    Name = first_name + last_name
    # 输出“张三”
  3. 字符串变量可以和整数使用*重复拼接相同的字符串

    "%" * 10
    # 输出“%%%%%%%%%%”
  4. 数字型变量和字符串之间不能进行其它计算

👀变量的输入

所谓输入,就是用代码获取用户通过键盘输入的信息。例如:输入密码

Python中,如果要获取用户在键盘上的输入信息,需要使用到input函数。

(1)关于函数

函数 说明
print(x) x输出到控制台
type(x) 查看x的变量类型

(2)input函数实现键盘输入

Python中可以使用input函数从键盘中等待用户的输入;

用户输入的任何内容,Python都认为是一个字符串;

字符串变量 = input("提示信息:")
浮点数变量 = float(input("提示信息:"))
整数型变量 = int(input("提示信息:"))

(3)类型转换函数

函数 说明
int(x) x转换为一个整数
float(x) x转换为一个浮点数

👀变量的格式化输出

Python中可以使用print函数将信息输出到控制台;如果希望输出文字信息的同时,一起输出数据,就需要使用到格式化操作符

%被称为格式化操作符,专门用于处理字符串中的格式。

  • 包含%的字符串,被称为格式化字符串

  • %和不同的字符连用,不同类型的数据需要使用不同的格式化字符

格式化字符 含义说明
%s 字符串
%d 有符号十进制整数,%06d表示输出的整数显示位数,不足的地方使用0补全
%f 浮点数,%.2f表示小数点后只显示两位
%% 输出%
# 语法格式
print("格式化字符串" % 变量1)
print("格式化字符串" % (变量1,变量2...))

name = "小明"
student = 000001
scale = 10.00%
print("我的名字叫%s" % name)
print("我的学号是%06d" % student)
print("数据比例是%.2f%%" % (scale * 100)

⛄运算符

运算符主要包括:

  • 算术运算符
  • 比较(关系)运算符
  • 逻辑运算符
  • 赋值运算符
  • 运算符的优先级

👀算术运算符

算术运算符是完成基本的算术运算使用的符号,用来处理四则运算。

运算符 描述 实例
+ 30 + 20 = 50
- 30 - 20 = 10
* 乘(也可计算字符串重复次数) 30 * 20 = 600
/ 30 / 20 = 1.5
// 取整除 9 // 2 = 4
% 取余数 9 % 2 = 1
** 2 ** 3 = 8

👀比较(关系)运算符

运算符 描述
== 检查两个操作数的值是否相等,如果是,则条件成立,返回True
!= 检查两个操作数的值是否不相等,如果是,则条件成立,返回True
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立,返回True
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立,返回True
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立,返回True
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立,返回True

👀逻辑运算符

运算符 逻辑表达式 描述
and x and y 只有xy的值都为True,才会返回True
否则只要x或者y有一个值为False,就返回False
or a or y 只要x或者y有一个值为True,就返回True
只有xy的值都为False,才会返回False
not not x 如果xTrue,返回False
如果xFalse,返回True

👀 赋值运算符

Python中,使用=可以给变量赋值;在算术运算时,为了简化代码的编写,python还提供了一系列与算术运算符对应的赋值运算符。注意:赋值运算符中间不能使用空格。

运算符 描述 实例
= 简单的赋值运算符 c = a + b将a + b的运算结果赋值为c
+= 加法赋值运算符 c += a等效于c = c + a
-= 减法赋值运算符 c -= a等效于c = c - a
*= 乘法赋值运算符 c *= a等效于c =c * a
/= 除法赋值运算符 c /= a等效于c = c /a
//= 取整除赋值运算符 c //= a等效于c = c // a
%= 取模(余数)赋值运算符 c %= a等效于c = c % a
**= 幂赋值运算符 c **= a等效于c = c ** a

👀 运算符的优先级

优先级由高到低顺序排列:

运算符 描述
** 幂(最高优先级)
* / % // 乘、除、取余数、取整数
+ - 加法、减法
<= < > >= 比较运算符
== != 等于运算符
= %= /= //= -= += *= 赋值运算符
not or and 逻辑运算符