
一、第一个 Python 程序
在正式编写第一个 Python 程序前,我们先复习一下什么是命令行模式和 Python 交互模式。
1.1 命令行模式、Python 交互模式
命令行模式:
在 Windows 开始菜单选择 “命令提示符”,就进入到命令行模式,它的提示符类似 C:\>
:

Python 交互模式:
在命令行模式下敲命令 python
,就看到类似如下的一堆文本输出,然后就进入到 Python 交互模式,它的提示符是 >>>
。

在 Python 交互模式下输入 exit()
并回车,就退出了 Python 交互模式,并回到命令行模式:

也可以直接通过开始菜单选择 Python 3.10 (64-bit)
菜单选项,直接进入 Python 交互模式。

了解了如何启动和推出 Python 的交互模式,我们就可以正式开始编写 Python 代码了。
1.2 Python的执行方式
- 数学计算:
在交互模式的提示符 >>>
下,直接输入代码,按回车,就可以立刻得到代码执行结果。现在,试试输入 100+200
,回车之后就可以立马得到计算结果:
>>> 100+200
300
- 打印指定文字:
如果要让 Python 打印出指定的文字,可以用 print()
函数,然后把希望打印的文字用单引号或者双引号括起来,单不能混用单引号和双引号:
>>> print('hello, world')
hello, world
- 执行 .py 文件:
在命令行模式下,可以执行 python
进入 Python 交互环境,也可以执行 python hello.py
运行一个 .py
文件。
此外,在命令行模式运行 .py
文件和 Python 交互环境下直接运行 Python 代码有所不同。Python 交互环境会把每一行 Python 代码的结果自动打印出来,但是,直接运行 Python 代码却不会默认打印。
比如,写入一个 calc.py
的文件,内容如下:
100+200+300
然后再命令行模式下执行:
C:\work>python calc.py
发现什么输出都没有,这是正常的。想要输出结果,必须用 print()
打印出来,如下所示:
print(100+200+300)
再执行,就可以看到结果:
C:\work>python calc.py
600
最后,Python交互模式的代码时输入一行,执行一行,二命令行模式下直接运行 .py
文件时一次性执行该文件内的所有代码。
可见,Python 交互模式 主要是为了调试 Python 代码用的,也便于初学者学习,它 不是正式运行 Python 代码的环境。
1.3 SyntaxError 语法错误
如果遇到了 SyntaxError
,表示输入的 Python 代码有语法错误,最常见的一种语法错误是使用了中文括号 (
和 )
:
>>> print('hello')
File "<stdin>", line 1
print('hello')
^
SyntaxError: invalid character '(' (U+FF08)
或者使用了中文引号 “
和 ”
:
>>> print(“hello”)
File "<stdin>", line 1
print(“hello”)
^
SyntaxError: invalid character '“' (U+201C)
1.4 输入和输出
- 输入:
如果要让用户从电脑输入一些字符串怎么办?Python 提供了一个 input()
方法。可以让用户输入字符串,并存放到一个变量里。
比如输入用户的名字:
>>> name = input();
Michael
当你输入 name=input()
并按下回车后,Python 交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后挖成输入。
输入完成后,不会有任何提示,Python 交互式命令又回到 >>>
状态了。我们刚才输入的内容存放到 name
变量里了。可以直接输入 name
查看变量内容,如下所示:
>>> name
'Michael'
- 输出:
用 print()
在括号中加上字符串,就可以像屏幕上输出指定的文字。比如输出 'hello, world'
,用代码实现如下:
>>> print('hello, world')
hello, world
print() 函数也可以接受多个字符串,用英文逗号 ,
隔开,就可以连成一串输出:
>>> print('The quick brown fox', 'jumps over', 'the lazy dog')
The quick brown fox jumps over the lazy dog
print() 函数会依次打印每个字符串,遇到英文逗号 ,
会输出一个空格。因此,输出的字符串是这样拼起来的:

print() 也可以打印整数,或者计算结果:
>>> print(300)
300
>>> print(100 + 200)
300
因此,我们可以把计算 100 + 200
的结果打印得更漂亮一些:
>>> print('100 + 200 =', 100 + 200)
100 + 200 = 300
有了输入和输出,我们就可以把上次打印 'hello, world'
的程序改成有意义一些:
name = input('please enter your name: ')
print('hello', name)
再次运行这个程序,你会发现,程序一运行,会首先打印出 please enter your name:
。这样用户就可以根据提示,输入姓名后,得到 hello, xxx
的输出:

每次运行该程序,根据用户输入的不通,输出结果也会不同。
二、Python 基础
2.1 Python 语法
Python 的语法比较简单,采用缩进方式,写出来的代码就像下面的样子:
# print absolute value of an interger:
a = 1000
if a >= 0:
print(a)
else:
print(-a)
- 注释:
以 #
开头的语句是注释,注释的作用是方便代码阅读,解释器会忽略掉注释。
- 缩进:
缩进有利有弊。
好处1:强迫你写出格式化的代码,应该始终坚持使用 4个空格作为缩进。
好处2:强迫你写出缩进较少的代码,你会倾向于把一段很长的代码拆分成若干函数,从而得到缩进较少的代码。
坏处:“复制-粘贴”功能失效了。IDE 很难像格式化 Java 代码那样格式化 Python 代码,当你重构代码时,粘贴过去的代码必须重新检查缩进是否正常。
- 大小写敏感:
请务必注意,Python 程序是大小写敏感的,如果写错了大小写,程序会报错。
2.2 数据类型
Python3 中有 六个标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)。
Python3 的六个标准数据类型中:
- 不可变数据(3个): Number(数字)、String(字符串)、Tuple(元组);
- 可变数据(3个): List(列表)、Dictionary(字典)、Set(集合)。
1)Number 数字
Python3 支持 int、float、bool、complex(复数)。
数字类型是顾名思义用来存储数值的,需要记住的是,有些和 Java 的字符串差不多的是,如果改变了数据类型的值,将重新分配内存空间。
Python 支持三种不同的数值类型:
整型(Int)
:通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有大小限制的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。浮点型(float)
:浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 × 10的2次方 = 250)。复数(complex)
:复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a, b) 表示,复数的实部 a 和虚部 b 都是浮点型。
示例:创建一个 number.py
,内容如下:
counter = 100 # 整型变量
miles = 1000.0 # 浮点型变量
name = "test" # 字符串
print(counter)
print(miles)
print(name)
执行结果:

数字类型转换:
int(x)
:将 x 转换为一个整数。float(x)
:将 x 转换到一个浮点数。complex(x)
:将 x 转换到一个复数,实数部分为 x,虚数部分为 0。complex(x, y)
:将 x 和 y 转换到一个复数,实数部分为 x,叙述部分为 y。x 和 y 是数字表达式。
和别的语言一样,数字类型支持各种常见的运算,不过 Python 的运算比别的大多数常见语言都更加丰富。此外,还有大量丰富的方法,提供更高效的开发。
数值运算示例:
+
:加法,例:5 + 4 = 9-
:减法,例:4.3 - 2 = 2.3*
:乘法,例:3 * 7 = 21/
:除法,得到一个浮点数,例:2 / 4 = 0.5//
:除法,得到一个整数,例:2 // 4 = 0%
:取余,例:17 % 3 = 2**
:乘方,例:2 ** 10 = 1024
2)String 字符串
创建字符串可以使用单引号 '
、双引号 "
、三单引号 '''
和三双引号 """
,其中三引号可以多行定义字符串,Python 不支持单字符类型,单字符在 Python 也是作为一个字符串使用。
我们定义一个 s='python'
语句,它在计算机中的执行顺序是:
- 先在内存中创建一个字符串 “python”;
- 在程序栈寄存器中创建一个变量 s;
- 最后把 “python” 字符串的地址赋值给 s。
字符串的常见操作:
切片(slice)
:语法为 [ 起始 : 结束 : 步长],选取的区间为 “左闭右开”。“起始” 为空,则默认从头开始;“结束” 为空,则默认一直到结尾;步长为空,则默认为1。
>>> s = '学习Python'
&