1989 年圣诞节,Guido van Rossum 开始开发;1991 年发布 0.9.0 版本。名字来自喜剧团体 Monty Python,和蟒蛇无关。
解释型语言:代码由解释器逐行解读运行,不同于 C++ 的编译型。考试常问「Python 是一种什么语言」→ 解释型语言。
print("Hello Python")
Guido van Rossum
解释型
1991
交互式 Shell(提示符 >>>):输入立即执行,但关闭即丢失。适合测试。
编辑器窗口:File → New File,写完整程序;保存为 .py,按 F5 运行,结果显示在 Shell。
name = input("请输入名字:")
print("你好,", name)
括号必须成对、英文括号;字符串要加引号(单双引号均可,但要成对)。
print('Hello')
print(1 + 1)
print('1+1')
print(1, 2, 3)
print(1, 2, sep='-')
print('a', end='')
⚠️ 引号里的内容原样输出:print('1+1') → 1+1;print(1+1) → 2。
sep
end
逗号分隔
从键盘获取信息,返回值一定是字符串。括号内可写提示文字。
name = input('请输入姓名:')
age = input('请输入年龄:')
age_num = int(input('年龄:'))
💡 只写 input 没有 print 不会显示任何输出(除了提示文字)。
= 是赋值,不是判断相等。变量像盒子,用来存值。
age = 18
name = '小明'
print(age)
print('age')
print(name, '今年', age, '岁')
赋值
变量不加引号
常见类型:int, float, str, bool, list, tuple, dict, set, NoneType。
type(3)
type(3.14)
type('hi')
type(True)
type(1) == int
int() 转整数,float() 转小数,str() 转字符串,bool() 转布尔。
a = int('13')
b = float('3.14')
c = str(100)
d = bool(0)
int('13') + 1
⚠️ input 拿到的都是字符串,要算数先 int() 或 float()。
+ - * / // % **
10 / 4
10 // 4
10 % 4
2 ** 10
2 + 3 * 4
(2+3)*4
True / False 首字母必须大写。比较结果均为布尔值。
3 > 2
3 == 2
'a' < 'b'
x = 5
x == 5
⚠️ 写成 true 或 TRUE 会报 NameError。
True and False
True or False
not True
a, b = 5, 3
not a == b
if 和条件之间要有空格,条件后必须有冒号,缩进代码块。else 后面不能跟条件,直接冒号。
a = 10
b = 20
if a < b:
print('a 小于 b')
else:
print('a 大于等于 b')
⚠️ 缩进不一致会报 IndentationError。else 后面不能写条件。
for i in range(...),i 是循环变量。range(100) 产生 0~99,共 100 次。
for i in range(3):
print(i)
for i in range(1, 10, 2):
print(i)
for i in range(1, 1001):
print(i)
起点
终点(不含)
步长
while 条件成立就一直做,务必在循环内改变量避免死循环。break 跳出整个循环;continue 跳过本轮剩余代码。
a = 0
while True:
a += 1
if a == 5:
break
print(a)
for i in range(15):
if i == 10:
continue
print(i)
⚠️ while 2: print(1) 是死循环,记得加 break 或条件。
Python 用缩进表示代码块,标准 4 个空格(IDLE 中 Tab 自动转4空格)。同一块缩进必须一致。
int('13') + 1
if True:
print('a')
print('b')
完整程序:输出 → 输入 → 处理 → 输出。注释 # 不参与运行。
a = int(input('请输入第一个数:'))
b = int(input('请输入第二个数:'))
print(a, '+', b, '=', a + b)
输入→处理→输出
注释 #
字符串可按字母顺序比较(类型需相同)。print 用逗号自动加空格,用 + 拼接需手动 str() 且无空格。
print('a' < 'b')
name = '小明'
age = 10
print(name, '今年', age, '岁')
print(name + '今年' + str(age) + '岁')
print(1, 2, sep='😊', end='!')
range(5)
range(1,5)
range(0,10,2)
for i in range(100):
pass
💡 取不到终点值,例如 range(100) 最大是 99。