第一章,开始学习Python
本章内容将介绍:
- Python是什么
- 执行Python程序
- 交互式shell(基本会话模式)
- 运算符和操作数
- 一元运算符和二元运算符
- 基本算术运算符
- 运算符的优先级
- 类型和type函数
- 数值型
- 整形、浮点型、复数型
- 数值字面量
- 整数字面量(各个进制)和浮点数字面量
- 字符串
- 字符串字面量和原始字符串字面量
- 转移字符
- 变量
- 赋值语句
1-1 Python是什么
程序是驱动计算机的指令的集合,计算机正式通过程序来完成各种处理的。
用于系统描述程序的人工语言叫编程语言,Python是由荷兰的吉多·范罗苏姆开发的编程语言,名字来源于英国广播公司BBC的电视喜剧片《Monty Python's Flying Circus》。
Python的特点
- 免费的开源软件:Python可免费使用且源代码公开,所以我们不仅能够使用Python开发程序,还能阅读和学习Python的内部机制。
- 多平台运行:Python可在Windows、macOS和Linux等平台上运行。
- 文档丰富:互联网上有入门教程等在线文档可供学习和参考。
- 适用于众多领域的通用语言:Python擅长机器学习和深度学习等人工智能领域,也擅长数据分析、科学计算、Web应用程序和GUI等领域,不仅如此,Python还具有胶水语言的特性,能轻易地与用其它语言开发的程序组合在一起。因此,针对Python不擅长的领域,开发人员也可以利用其它擅长该领域的编程语言编写程序,然后配合Python进行开发。
- 支持各种编程范式:在开发程序时,我们可以用各种编程范式来表达编程的基本思想、思维方式和开发方法。Python极具包容性,支持多种编程范式,比如命令式编程、过程式编程、函数式编程和面向对象编程等。
脚本语言:脚本语言是体系较小的编程语言,易于编写程序、运行程序和测试程序。Python就是一种脚本语言,它具有以下特点:
- 代码简介,比其它编程语言少几成代码
- 可读性好,程序代码容易阅读
- 解释执行,程序能以会话的方式逐行运行,易于调试错误
- 丰富的库:编程语言自身具有一定局限性,会将图像和网络等处理交给库去执行,所以这类程序无法快速运行,而Python把主要部分交给运行速度很快的库来处理,能提高程序的运行速度,
- 难以掌握:虽然Python看起来易上手,但事实上可读性强意味着简短的Python代码中潜藏着很多深层含义。另外,Python表面上几乎没有指针,但其实内部充满了指针。
1-2 Python基础知识
运算符和操作数
常见的运算操作有:
7 + 3 # 加法
7 - 3 # 减法
7 * 3 # 乘法
7 / 3 # 除法
7 // 3 # 取整除
7 % 3 # 取余
7 ** 3 # 求幂
7 * (3+2) * 4 # 优先级计算
+和-这样的符号称为运算符,而两侧的数字为操作数,运算符两侧可以留有空格
大多数运算规则与四则运算规则相同,即:
- 从左至有进行运算
- 乘除法优先级高于加减法
- 优先运算括号内的表达式
- 括号可以嵌套
有两个操作数的运算符称为二元运算符,除了二元运算符外,还有存在3个操作数的运算符——三元运算符,以及只有一个操作数的一元运算符。
7 *+ 3 # 表示求7和+3的积
7 *- 3 # 表示求7和-3的积
通过以上例子我们可以得出,+ 和 - 一元运算符的优先级比乘除法的优先级高
下表为各个运算符按优先级进行排序后的一览表
x y** | 求幂运算符 | 求x的y次方 |
---|---|---|
+x | 一元运算符 | 求x本身的值 |
-x | 一元运算符 | 求x符号反转后的值 |
x * y | 乘法运算符 | 求x乘以y的值 |
x / y | 除法运算符 | 区域x除以y的实数值 |
x // y | 取整除运算符 | 求x除以y的整数部分 |
x % y | 求余运算符 | 求x除以y的余数 |
x + y | 加法运算符 | 求x与y的和 |
x - y | 减法运算符 | 求x与y的差 |
数值型和数值字面量
只有使用运算符/
的运算结果是实数,其结果中包含了小数部分,其它运算结果为整数。
数值型
不同编程语言表示数值的方法各不相同,Python用类型(type)来表示数值、字符的种类和方法,Python有3中表示数值的类型。
- int型:表示整数型
- float:表示实数的浮点型
- complex:表示复数的复数型
许多编程语言的int型只能表示有限的数值,比如数值范围被限制为-2147483648~2147483647,而Python没有这个限制,另外,Python的float相当于C和Java的dubbo型
int型数值之间的加法运算结果是int型,除此以外的加法运算结果都是float型。
数值字面量(整数字面量和浮点数字面量)
7 和 3.0等数值的标识法称为数值字面量,7是整数字面量,3.0是浮点数字面量。整数字面量不仅可以标识十进制数,还可以标识二进制数、八进制数和十六进制数。一般来说,n进制数是以n为基数的数,各基数的字面量表示方法如下所示,十进制外的进制数需要添加前缀
- 二进制字面量:前缀是0b,使用0和1
- 八进制字面量:前缀是0o,使用0~7
- 十进制字面量:不需要前缀,使用0~9
- 十六进制字面量:前缀是0x,使用0~9和ABCDEF表示
其中,二进制、八进制、十六进制的前缀也可写成0B、0O、0X,在十进制中,除0以外的数字开头不能为0,因此,03和010等式错误的表示方法。
Python从3.6版本开始,可以在数值字面量字符之间任意位置插入下划线
_
,这样可以让位数更多的数值更易于阅读。
浮点数字面量可以省略整数部分或小数部分,另外,我们也可以在浮点数字面量的末尾添加10的质数表示形式,如:
6.52
10.
.001
1e5
3.14e-7
3.141_592_653_5
变量和类型
在学习初期,可以把变量理解为一个箱子,用来存储整数、浮点数和字符串等值。把相应的值放入变量后,可以随时取出。(这种解释不完全正确,但学习初期可以暂时这么理解)
初次使用的变量名在赋值时,程序会自动声明该变量
- 可以使用
type
函数确认变量类型
总结
- 作为一种迅速普及的脚本语言,Python支持多种编程范式,包括命令式编程、过程式编程、函数式编程和面向对象编程。
- Python的版本在不断更新,当前已经更新至Python3,因此,如果没有必须在Python2上开发的需求,建议使用Python3.
- Python能以多种方式执行,包括交互式shell、python命令和集成开发环境
- 基本会话模式会显示主提示符
>>>
,该提示符后需要输入命令和语句。输入quit()或exit()将推出基本会话模式。 - 类型表示数值和字符的性质
- 数值型包括整型、浮点型和复数型
- 用数字或排列在一起的字符表示数值的方式称为数值字面量
- 整数字面量可以用二进制、八进制、十进制和十六进制表示
- 浮点数字面量的末尾可以附加适用10的指数形式
- 反斜杠符号和不同字符组合在一起可以表示不同的转义字符
- 在一行代码的最后输入
\
,可以将本行代码延续到下一行 - 表示字符串的类型是“字符串型”,字符串字面量是字符的拼写方式,使用单引号''、双引号、3个单引号、或3个双引号包围需要表示的字符串。
- 多个字符串字面量之间如果包含转义字符,就会以字符原本的形式进行解释
- 可以使用运算符+进行数值的加法运算和拼接字符串,但字符串和数值不能相加’
- 变量可以存储整数、浮点数和字符串等值,这些值可以随时取出来使用
- 第一次使用的变量在赋值时,程序会自动声明该变量
- 可以把与当前变量值类型不同的值赋给变量
- 用逗号分隔多个变量并把分隔好的变量放在等号左侧,我们就可以同时为他们赋予不同的值,赋值操作理论上是同时进行的
- 可以使用type函数查看变量和字面量的类型