变量
- 变量是编程中最基本的单元,它会暂时引用用户需要存储的数据,例如小刘的年龄是18,就可以使用变量来引用18,如图所示。
在图中,变量名age是一个标识符,通过赋值符(=)将数据18与变量名age建立关系,这样age就代表18,此时可以通过print()查看age的值,具体示例如下:
如果想将小刘的年龄修改为20并输出,则可以使用以下语句:
标准输入输出
标准输入输出是非常重要的,是我们编写任何代码都必须先了解的语法,这里以C#做对比,介绍Python的标注输入方法input和标准输出方法print。
input方法在Python中的作用和Console.ReadLine一致,可以从电脑获得用户的输入数据,称之为标准输入。在Python 2中标注输入分为input和raw_input两个方法,其中input只能接受明确格式的输入,要么输入字符串要么数字,混合在一起会报错。这一点在Python 3中得到了改进,统一合并为input方法。因此从功能上,input和C#的标准输入功能一致,都允许用户输入任何内容,并以字符串的形式读取。
print方法作为Python的标准输出方法,可以将任何对象输出为字符串。但这里值得注意的是,Python并不支持字符串和不同值类型的直接相加,这会导致异常抛出。而C#支持此特性,如下:
因此在Python中需要将其他类型先转换为字符串才可以直接字符串变量相加,如下:
数据类型
基本类型是数据操作的起步,前面的内容已经出现过字符串和数值之类的操作。Python的基本类型主要分为整形(int),浮点数(float),复数(complex),布尔值(bool)、字符串类型、列表类型、元组类型、字典类型和集合类型。
-
整型
整型表示存储的数据是整数,Python的整形几乎没有长度限制,可以输入任意大小的数值。这取决于系统内存的限制,基本想要多大值就可以多大。这点和C#极为不一样,C#中即使是long,它的取值范围也都是有限的,最大也就是2^63 - 1。
此外,对于其他进制的数值表现形式Python也是不一样的,主要区别在于不同进制数值的前缀,如下:
-
浮点型
浮点型表示存储的数据是实数,如3.145,在科学计数法格式中,E或e代表基数是10,其后的数字代表指数,31.4e-2表示31.4×10-2,31.4E2表示31.4×102
虽然Python对float的取值范围没有明确限制,但是大多数平台上会被实现为双精度64位浮点数,大部分情况下最大值大约为1.8 ⨉ 10^308,超过这个值就会被显示为inf.
-
复数型
复数型用于表示数学中的复数,如1+2j、1-2j、-1-2j等,这种类型在科学计算中经常使用,当虚部为1j或-1j时,在数学中,可以省略1,但在Python程序中,1是不可以省略的。
-
布尔型
布尔型是一种比较特殊的整型,它只有True和False两种值,分别对应1和0,它主要用来比较和判断,所得结果叫做布尔值。
此外,每一个Python对象都有一个布尔值,从而可以进行条件测试,下面对象的布尔值为False:
检测数据类型
在Python中,数据类型是由存储的数据决定的。为了检测变量所引用的数据是否符合期望的数据类型,Python中内置了检测数据类型的函数type()。它可以对不同类型的数据进行检测
示例中,使用type()函数分别检测a、b、c所引用数据的类型。
除此之外,还可以使用函数isinstance()判断数据是否属于某个类型,具体示例如下:
数据类型转换
数据类型转换是指数据从一种类型转换为另一种类型,转换时,只需要将目标数据类型名作为函数名即可,如表所示
表中列出的是数字类型之间的转换,其他类型之间也可以转换,如数字类型转换为字符串型
接下来演示数字类型之间转换,如例所示。