在计算机中,以位(0或1)表示数据,因此计算机程序理所当然的可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据需要定义不同的数据类型。本小节将介绍几种Python中常见的基本数据类型。
一、整型数据
Python可以处理任意大小的整数,当然也包括负整数,在程序中的表示方法和数学上的写法一模一样,如6、124、-64、0等。由于计算机使用二进制,所以在很多地方可以看到用十六进制表示整数,十六进制用0x和0 ~ 9、a ~ f表示,如图:
a=1865
b=0xff00
c=0x12aa
二、浮点型数据
浮点数也可以称为小数,之所以成为浮点数,是因为按照科学计数法表示时,一个浮点数的小数点位置是可变的。浮点数可以用数学写法表示,如15.78、3.1415、-3.66等。而对于很大或很小的浮点数,就必须用科学计数法表示,如3.140000000可以表示为3.14e9,0.0000123可以表示为1.23e-5。
常见的浮点型数据如:
a=3.1415
b=3.14e5
c=0.008
三、字符串类型
字符串是以单引号“ ‘’ ”或双引号“ “” ”括起来的任意文本,如’hello’、"world"等。注意,单引号或双引号本身只是一种表示方式,不是字符串的一部分,如果’本身也是一个字符,那就可以用“ “” ”将其括起来。
如果字符串里既包含单引号又包含双引号,就可以用转义字符“ \ ”作为转义字符,如果不想将“ \ ”作为转义字符,则需要在字符串前加“ r ”,表示原始字符串,如:
print("1.",'I\'am man')
print("2.","I'm \"man\"")
print("3.",r"I'm\"man\"")
执行结果如下,输出字符串。
四、复数数据
复数由一个实数和一个虚数构成,一个复数是一对有序的浮点数,表示如下
real + imag*j
其中real为实数部分,imag为虚数部分,Python中复数有以下几个特点:
(1)虚数不能独立存在。
(2)虚数部分需要有后缀 j 或者 J 。
(3)实数和虚数部分都是浮点数。
例如:54.9+8 j 、20.0+4.6 j 、24-2.5 j 、-96+42.1J 等
而共轭复数是指实数部分相同,虚数部分相反的复数。
示例:
a = 50.5 +5j
print("实数部分:",a.real)
print("虚数部分:",a.imag)
b=a.conjugate()
print("a的共轭复数:",b)
执行结果如下,输出字符串。
五、常量数据
Python不能像C、C++那样使用const关键字定义常量,一般使用大写变量名来标识其为常量,但本质上还是变量。常量用于表示一个固定不变的、约定俗成的或项目中达成共识的变量。
如:
PI = 3.14
CITY = "bei jing"
Monday = "Mon"
六、布尔型数据
布尔运算
布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True、要么是False。在Python中,可以直接用True、False表示布尔值(注意大小写),也可以通过布尔运算计算出来,如:
print("1>2=",1>2)
print("3<4=",3<4)
执行结果如下,输出布尔运算结果。
布尔值也可以用and、or和not运算。
与运算
and运算是与运算,只有所以都为True,and运算结果才是True,如:
print("True and True=",True and True)
print("True and False=",True and False)
print("False and False=",False and False)
执行结果如下,输出与运算结果。
或运算
or运算是或运算,只要其中有一个为True,or运算结果就是True,如:
print("True or True=",True or True)
print("True or False=",True or False)
print("False or False=",False or False)
执行结果如下,输出或运算结果。
非运算
not运算是非运算,它是一个单目运算符,把True变成False,把False变成True,表示对后面的布尔表达式进行取反运算,如:
print("not True=",not True)
print("not False=",not False)
print("not(1>2)=",not(1>2))
print("not((1>2)and(5>4))=",not((1>2)and(5>4)))
执行结果如下,输出非运算结果。
七、空值
空值是Python里一个特殊的值,用None表示。但是None不能理解为0,因为0是有意义的,而None则是一个特殊的空值。此外,Python还提供了列表、字典、元组等多种数据类型,还允许创建自定义数据类型,这些相对复杂的数据类型以后会进行详细讲解。