给女朋友的 Python 教程——在交互环境中试一试

date
Apr 19, 2024
slug
A-Python-tutorial-for-girlfriend-004-haveatry
status
Published
tags
Python
summary
type
Post
经过前面三部分的介绍,现在应该以及安装好了 Python 交互环境、VS Code 编辑器,也粗略看了下 Python 程序长什么样子。这部分我们会进入 IPython 的交互环境,在其中试一试数字、字符串等数据类型的操作和运算。
在此约定,先在 PowerShell 中进入交互环境,现在都是在这个环境下的输入输出,类似 In [*] 为输入行,Out[*] 为执行后的输出行。

数字

算术运算

Python 解释器像一个简单的计算器:你可以输入数字的表达式,它将给出结果值。 表达式语法很直观:运算符 +, -, * 和 /可被用来执行算术运算;圆括号 (()) 可被用来进行分组。 例如:

三种数字类型

Python 中三种数字类型:int, float 和 complex ,上面整数(如,1995、 1985 )的类型是 int,带小数(如,-191.5 )的类型是 float,类型complex 是复数,后缀 j 或 J 用于表示虚数,不过复数我们基本不会使用,了解即可,例如:

除法相关

数字除法运算 (/) 总是返回浮点数,即使正好可以整除;还有一种除法是 floor division (地板除),使用 // 运算符得到一个整数结果,结果是小于或等于商的最小整数;要计算余数你可以使用 %,例如:

幂运算

Python 使用 ** 运算符来执行幂运算:

数字比较

我们可是轻松比较数字的大小,Python 中有<, >, <=, >=, ==, != 比较运算符,运算的结果只有两种 True 或 False,这两个结果是布尔(bool)类型,布尔类型只有这两个常量。
注意,Python 中相等的运算符是 == ,不能用 = , = 用来给给变量赋值,用它来比较数字会引起语法错误:
当 int类型的整数和float 类型的浮点数比较时,Python 会自动将整数转换成浮点数,再进行比较:

文本

数字运算让 Python 看起来就是一台计算器,和我们读书时候用的卡西欧似乎没有太大的不同,不过它不只能处理数学运算,还能够操作文本,文本也是字符串,英语中为 string,字符串的类型是str。

文本标示

在 Python 中用成对的单引号 ('...') 或双引号 ("...") 来标示文本,用如果前后分别是三个单引号('''...''')或双引号 ("""...""") ,可以表示多行文本:
单引号内允许嵌入双引号,同样,双引号内也允许嵌入双引号,如果是文本里引号本身,我们需要将文本里的引号用转义字符 \ 转义:

转义

观察下面的字符串,很奇怪,这里的 \n 是什么,我们用 print 函数,来打印这段字符串,看一看会发生什么:
可以看到, \n 会开始新行,在这里 \n 表示换行符,类似这种转义字符为在字符串中表示无法输入或看不见的字符,比如键盘上的 Backspace 键,可以删除后面的一个字符,在这里就要用到转义字符 \b ,下面的 '3' 就被删掉了:
甚至可以用 \a 来让电脑发出声音:
完整的转义序列表如下,自己试一试吧:
转义序列
含意
备注
\\
反斜杠(\)
ㅤ
\'
单引号(')
ㅤ
\"
双引号(")
ㅤ
\a
ASCII 响铃(BEL)
ㅤ
\b
ASCII 退格符(BS)
ㅤ
\f
ASCII 换页符(FF)
ㅤ
\n
ASCII 换行符(LF)
ㅤ
\r
ASCII 回车符(CR)
ㅤ
\t
ASCII 水平制表符(TAB)
ㅤ
\v
ASCII 垂直制表符(VT)
ㅤ
\ooo
八进制数 ooo 字符
ㅤ
\xhh
十六进制数 hh 字符
ㅤ

字符串的 + 和 *

在数字中, + 和 * 分别是加和乘,在字符串中使用它们,有了新的含义,两个字符串 + ,相当于合并(粘到一起), * 相当于重复,甚至可以用() 将它们联合起来使用,这种现象叫做运算符重载:

总结

简单介绍数字和文本字面量的概念和运算。

作业

  1. 探索 Python 交互环境:
      • 打开命令行界面(PowerShell),输入 ipython 进入交互环境,在其中试一试本节讲述的知识
      • Python 提供了 type() 函数,返回参数的类型,用它来看一看数字和文本的类型都是什么
 

© chao 2021 - 2026