变量 简单理解就是给一段代码或值起个名字,这个名字就是变量了,在编写代码的时候可以用变量名代指被命名的代码或值。
本题在前面 print()
函数以及运算符的基础上将值命名成为变量后进行运算并打印
题目
本题在前面 print()
函数以及运算符的基础上将值命名成为变量后进行运算并打印出来。
加分练习
0.作者在开始的时候犯了一个错误如下,请解释下面错误信息:
Traceback (most recent call last):
File "ex4.py", line 8, in <module>
average_passengers_per_car = car_pool_capacity / passenger
NameError: name 'car_pool_capacity' is not defined
- 程序中用了
4.0
作为space_in_a_car
的值,这样做有必要么?如果用 4 会怎样? - 记住 4.0 是一个“浮点数”,自己研究一下是什么意思。
- 在么一个变量赋值的上一行加一行注释
- 记住
=
的作用是为东西取名。 - 记住
_
是下划线。 - 和之前一样,将 python 作为计算器运行,不过以变量名来做计算。
我的答案
4.0.1. 基础练习 + 4.3. 加注释
# 表示汽车数量的变量
cars = 100
# 表示车内空间的变量
space_in_a_car = 4.0
# 表示司机数量的变量
drivers = 30
# 表示乘客数量的变量
passengers = 90
# 变量表示无法行驶车辆数量的变量
cars_not_driven = cars - drivers
# 表示可以行驶车辆数量的变量
cars_driven = drivers
# 表示最大拼车容量的变量
carpool_capacity = cars_driven * space_in_a_car
# 表示平均每辆车中乘客数量的变量
average_passengers_per_car = passengers / cars_driven
print("There are", cars, "cars available.")
print("There are only", drivers, "drivers available.")
print("There will be", cars_not_driven, "empty cars today.")
print("We can transport", carpool_capacity, "people today.")
print("We have", passengers, "to carpool tody.")
print("We need to put about", average_passengers_per_car, "in each car.")
4.0.2. 错误信息的解释
第二行:
File "ex4.py", line 8, in <module>
告诉我们错误发生的位置在“ex4.py”文件的第8行。
第三行:
average_passengers_per_car = car_pool_capacity / passenger
列出了错误行的内容
第四行:
NameError: name 'car_pool_capacity' is not defined
告诉我们错误类型是 NameError
变量名 car_pool_capacity
未被定义
4.1. space_in_a_car 是否有必要使用浮点数
没必要使用浮点数,因为:
- 在 python2 中,整数在参与除法运算时才有可能产生小数部分被舍弃的问题,
space_in_a_car
并未参与除法运算。 - 在 python3 中,在处理出发时会自动变为浮点数,因此也不用使用浮点数。(就像我在 python3 环境中运行结果的最后一行)
4.2. 浮点数研究见上一题《3. 数字和数字计算》
后题省略,记住就行
额外内容
PEP8 —— python 代码样式指南
python 注重简洁和优雅,同时也是因为代码实际会不止一个人维护等原因,我也不知道什么时候形成了 PEP8 这个 python 的代码样式指南,总之 python 的程序员都在遵循这套指南。
今天的练习中预测了加分题 4.5 要求记住 _
下划线,想到没准谁看这个博客呢,而“笨2”也没提到格式方面的内容就想补充一下。
这里不会把完整的 PEP8 拿出来,只是目前涉及到的部分,今后也是遇到了再说。
代码行内的空格
这个空格其实在最开始的练习就存在,不知道纯新手在做的时候是不是也保留的这些空格,因为即便没有它们程序也不会出错
PEP8 中其实讲了很多空格的使用,简单来说为了更清晰的阅读代码以及表示字符间的关系我们使用空格来划分区块,但是不用滥用、尽量少用。
- 在运算符两边使用空格例如“+、=、-、<、>、and、not、”等。但如果有不同运算优先级则建议易便于阅读为标准,在最低优先级的运算符两边加一个空格(不可多用)
number = 1 + 1
# ^ ^ ^ ^ ← 空格指示
1+2 < 3+4
# ^ ^ ← 空格指示
- 在函数内使用
,
分隔不太参数后加空格
print("打印俩句话话", "这里是第二句")
# ^ ← 空格指示
变量命名规则
- 变量名只能使用字母、数字、下划线。但不能以数字开头
- 变量名不能包含空格,但可以用下划线替代表示。
- 不要使用 Python 的关键字和函数名作为变量名。( Python 关键字可参考:37.复习各种符号 )
- 变量名应该尽力简洁但更应具有具有描述性。
- 慎用易混淆的字符,例如小写
l
和大写O
它们很容易被当作数字。而中文的逗号、引号也容易和英文的混淆。