编程:一种全新的思维方式|Python入门第1章
🔥 从零开始学Python,先懂语法,再学思维
1. 编程是一种思维方式
本书的第一个目标是教你用Python编程。 学习编程意味着学习一种全新的思维方式,所以本书的第二个目标是帮你像计算机科学家一样思考。
这种思维融合了数学、工程学和自然科学的精华:
本章从最基础的元素讲起:数字、字符、算术运算,并开始积累编程词汇,如运算符、表达式、值、类型。
1.1 算术运算符
算术运算符用来表示基本数学计算。
# 加法30 + 12
运行结果:
42
# 减法43 - 1
运行结果:
42
# 乘法6 * 7
运行结果:
42
# 除法(结果为浮点数)84 / 2
运行结果:
42.0
Python有两种数字类型:
# 整数除法(向下取整)84 // 2
运行结果:
42
# 整数除法自动向下取整85 // 2
运行结果:
42
# 幂运算7 ** 2
运行结果:
49
# ^ 是按位异或,不是幂运算7 ^ 2
运行结果:
5
1.2 表达式
由运算符和数值组成的式子叫表达式。 Python遵循数学运算优先级: 幂运算 → 乘除 → 加减
# 先算幂,再算加6 + 6 ** 2
运行结果:
42
# 先乘后加12 + 5 * 6
运行结果:
42
# 括号优先(12 + 5) * 6
运行结果:
102
1.3 算术函数
Python内置常用数值函数。
# 四舍五入round(42.4)
运行结果:
42
round(42.6)
运行结果:
43
# 绝对值abs(42)
运行结果:
42
abs(-42)
运行结果:
42
调用函数必须带括号,否则报错:
# 错误写法:缺少括号abs42
运行结果:
SyntaxError: invalid syntax
1.4 字符串
字符串是字符序列,用单/双引号包裹。
# 单引号字符串'Hello'
运行结果:
'Hello'
# 双引号字符串"world"
运行结果:
'world'
# 字符串拼接 +'Well, ' + "it's a small " + 'world.'
运行结果:
"Well, it's a small world."
# 字符串重复 *'Spam, ' * 4
运行结果:
'Spam, Spam, Spam, Spam, '
# 获取字符串长度len('Spam')
运行结果:
4
注意:反引号`、智能弯引号 都是非法的。
1.5 值与类型
每个值都属于一种类型(type)。
# 整数类型type(2)
运行结果:
int
# 浮点数类型type(42.0)
运行结果:
float
# 字符串类型type('Hello, World!')
运行结果:
str
类型转换
# 浮点数转整数(向下取整)int(42.9)
运行结果:
42
# 整数转浮点数float(42)
运行结果:
42.0
# 数字字符串是str,不是数字type('126')
运行结果:
str
# 字符串转整数后运算int('126') / 3
运行结果:
42.0
大数字推荐用下划线分隔:
1_000_000
运行结果:
1000000
1.6 形式语言与自然语言
- 自然语言:人类日常语言,自然演化,有歧义、冗余、隐喻
- 形式语言:人为设计,无歧义、简洁、字面化,如编程语言
核心区别:
小细节错误(拼写、标点)都会导致程序无法运行。
1.7 调试(Debugging)
编程错误叫 Bug,找错改错叫 Debugging。
调试建议:
1.8 术语表
1.9 练习
1.9.1 助手问题
可问AI:
1.9.2 四舍五入规则
round(42.5)round(43.5)
运行结果:
4244
Python对x.5采用银行家舍入:就近取偶数。
1.9.3 故意犯错练习
尝试运行以下代码,观察错误:
+22++242round42.5
1.9.4 判断类型
判断下列表达式的类型:
1.9.5 算术表达式练习
📚 原文:Think Python 3rd Edition ✍️ 作者:Allen B. Downey