Python入门(三)变量和简单数据类型(二)
作者:Xiou
1.数
数在编程中是经常使用的一种数据类型,可以用来记录得分、表示可视化数据、存储信息等等。
1.1 整数操作
在Python中,可对整数执行加(+)减(-)乘(*)除(/)运算。
运行python环境。
>>> 2 + 3
5
>>> 3 - 2
1
>>> 2 * 3
6
>>> 3 / 2
1.5
在终端会话中,Python直接返回运算结果。Python使用两个乘号表示乘方运算:
>>> 3 ** 2
9
>>> 3 ** 3
27
>>> 10 ** 6
1000000
Python还支持运算次序,因此可在同一个表达式中使用多种运算。还可以使用圆括号来修改运算次序,让Python按你指定的次序执行运算,如下所示:
>>> 2 + 3*4
14
>>> (2 + 3) * 4
20
在这些示例中,空格不影响Python计算表达式的方式。它们的存在旨在让你在阅读代码时能迅速确定先执行哪些运算。
1.2 浮点数操作
Python将所有带小数点的数称为浮点数。大多数编程语言使用了这个术语,它指出了这样一个事实:小数点可出现在数的任何位置。每种编程语言都必须细心设计,以妥善地处理浮点数,确保不管小数点出现在什么位置,数的行为都是正常的。
从很大程度上说,使用浮点数时无须考虑其行为。你只需输入要使用的数,Python通常会按你期望的方式处理它们:
>>> 0.1 + 0.1
0.2
>>> 0.2 + 0.2
0.4
>>> 2 * 0.1
0.2
>>> 2 * 0.2
0.4
但需要注意的是,结果包含的小数位数可能是不确定的:
>>> 0.2 + 0.1
0.30000000000000004
>>> 3 * 0.1
0.30000000000000004
当然,这也不是什么大问题,所有语言都存在这种问题,没有什么可担心的。Python会尽力找到一种精确表示结果的方法,但鉴于计算机内部表示数的方式,这在有些情况下很难。就现在而言,暂时忽略多余的小数位数即可。
1.3 整数和浮点数
将任意两个数相除时,结果总是浮点数,即便这两个数都是整数且能整除:
>>> 4/2
2.0
在其他任何运算中,如果一个操作数是整数,另一个操作数是浮点数,结果也总是浮点数:
>>> 1 + 2.0
3.0
>>> 2 * 3.0
6.0
>>> 3.0 ** 2
9.0
无论是哪种运算,只要有操作数是浮点数,Python默认得到的总是浮点数,即便结果原本为整数也是如此。
1.4 数中的下划线
使用很大的数时,可使用下划线将其中的数字分组,使其更清晰易读:
>>> universe_age = 14_000_000_000
当你打印这种使用下划线定义的数时,Python不会打印其中的下划线:
>>> print(universe_age)
14000000000
输出结果:
这是因为存储这种数时,Python会忽略其中的下划线。将数字分组时,即便不是将每三位分成一组,也不会影响最终的值。在Python看来,1000与1_000没什么不同,1_000与10_00也没什么不同。这种表示法适用于整数和浮点数,但只有Python3.6和更高的版本支持。
1.5 同时给多个变量赋值
可在一行代码中给多个变量赋值,这有助于缩短程序并提高其可读性。这种做法最常用于将一系列数赋给一组变量。
例如,如何将变量x、y和z都初始化为零:
>>> x, y, z = 0, 0, 0
这样做时,需要用逗号将变量名分开;对于要赋给变量的值,也需同样处理。Python将按顺序将每个值赋给对应的变量。只要变量和值的个数相同,Python就能正确地将它们关联起来。
1.6 常量
常量类似于变量,但其值在程序的整个生命周期内保持不变。Python没有内置的常量类型,但Python程序员会习惯使用全大写来指出应将某个变量视为常量,其值应始终不变:
MAX_CONNECTIONS = 5000
在代码中,要指出应将特定的变量视为常量,可将其字母全部大写。
2.注释
大多数编程语言中,注释是一项很有用的功能。本书前面编写的程序中都只包含Python代码,但随着程序越来越大、越来越复杂,就应在其中添加说明,对你解决问题的方法进行大致的阐述。注释让你能够使用自然语言在程序中添加说明。
2.1 如何编写注释
在Python中,注释用井号(#)标识。井号后面的内容都会被Python解释器忽略,如下所示:
# 向大家问好。
print("Hello Python people!")
Python解释器将忽略第一行,只执行第二行。
输出结果:
2.2 编写什么样的注释
编写注释的主要目的是阐述代码要做什么,以及是如何做的。在开发项目期间,你对各个部分如何协同工作了如指掌,但过段时间后,有些细节你可能不记得了。当然,你总是可以通过研究代码来确定各个部分的工作原理,但通过编写注释以清晰的自然语言对解决方案进行概述,可节省很多时间。
要成为专业程序员或与其他程序员合作,就必须编写有意义的注释。当前,大多数软件是合作编写的,编写者可能是同一家公司的多名员工,也可能是众多致力于同一个开源项目的人员。训练有素的程序员都希望代码中包含注释,因此你最好从现在开始就在程序中添加描述性注释。作为新手,最值得养成的习惯之一就是在代码中编写清晰、简洁的注释。
如果不确定是否要编写注释,就问问自己:在找到合理的解决方案之前,考虑了多个解决方案吗?如果答案是肯定的,就编写注释对你的解决方案进行说明吧。相比回过头去再添加注释,删除多余的注释要容易得多。