Python提供的基本数据类型主要有:整数、浮点数、布尔型、字符串、列表、元组、集合、字典。

布尔值

布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(注意大小写),也可以通过布尔运算计算出来:

第五次课:Python 数据类型(一)_python

在运算符一节中我们谈到,布尔值适用and、or和not运算。and运算是与运算,只有所有都为True,and运算结果才是True;or运算是或运算,只要其中有一个为True,or运算结果就是True;not运算是非运算,它是一个单目运算符,把True变成False,False变成True,感兴趣的可以链接至第四次课:Python运算符

此外布尔值还常用在条件判断中,比如:

a=input('please input your age:')

 if a >= 18 :

     print ('welcome to my website')

 else:

     print ('sorry,your is teenager')

第五次课:Python 数据类型(一)_ 数据类型_02

整数

Python可以处理任意大小的整数,当然包括负整数,有int整型、long长整型、float浮点型、complex复数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0等。举例如下:

a1 = 100                  #表示整型

a2 = 123456L          #表示长整型

a3 = 3.1415926       #表示浮点型

a4 = 123j                  #复数

a5 = 123+45j           #复数

print(a1)

print(a2)

print(a3)

print(a4)

print(a5)

print(a4+a5)

第五次课:Python 数据类型(一)_python_03

浮点数

浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.23,3.14,-9.01等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5等。整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差。

为了演示浮点类型的,我们用到round()内置方法,如图:

a=2.0

b=2.545

c=3.555

print (round(a))

print (round(b))

print (round(c))

print(round(b,2))

print(round(c,2))

第五次课:Python 数据类型(一)_ 数据类型_04

从结果来看,round()不是简单四舍五入的处理方式。如果只有一个数作为参数,不指定位数的时候,返回的是一个整数,而且是最靠近的整数(这点上类似四舍五入)。但是当出现点5的时候,两边的距离都一样,round()取靠近的偶数,这就是为什么round(2.5) = 2。当指定取舍的小数点位数的时候,一般情况也是使用四舍五入的规则,但是碰到点5的这样情况,如果要取舍的位数前的小数是奇数,则直接舍弃,如果是偶数则向上取舍。

字符串

字符串是以单引号('')或双引号("")括起来的任意文本,比如'abc',"xyz"等等。请注意,单引号('')或双引号("")本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符。如果单引号('')本身也是一个字符,那就可以用双引号("")括起来,比如"I'm OK"包含的字符是I,',m,空格,O,K这6个字符。如果字符串内部既包含单引号('')又包含双引号("")可以用转义字符\来标识,举例如下:

print  'This is a quot'

print  "It's a quot"

print  "Are you ok"

print  "I'm ok"

print  "\"Are you OK?\"I'm Ok"

第五次课:Python 数据类型(一)_python_05

除了单引号('')和双引号外(""),Python还支持三引号(''''''),用来表示多行内容或注释,如下:

print '''one

... two

... three

... four

... five ''')

第五次课:Python 数据类型(一)_ 数据类型_06

为了更好的了解和掌握字符串数据类型,我们引入dir(),该函数可以查看对像内所有属于及方法,在python中任何东西都是对像,一种数据类型,一个模块等,都有自己的属性和方法。下面我们通过dir('')查看字符串类型支持的属性和方法,如图:

第五次课:Python 数据类型(一)_ 数据类型_07

我们找几个常用的属性和方法来看看效果:

find()        如果包含子字符串返回开始的索引值,否则返回-1
format()   返回经过格式化后的字符串
join()         返回通过指定字符连接序列中元素后生成的新字符串
replace()   返回字符串中的旧字符串替换成新字符串后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次
split()        返回分割后的字符串列表
strip()       返回移除字符串头尾指定的字符生成的新字符串

a='aagGEGEGgdgadabcaGEGEGEGaggeabcaGEGEGegegg'

b='Python'

c='###XYZereteteretetXYZetetet4teXYZzetete###'

print(a.find('abc'))

print(a.find('F'))

print(b+'{0}'.format('Python'))

print(a.replace('abc','ABC'))

print('-'.join(b))

print(c.split('XYZ'))

print(c.strip('###'))

第五次课:Python 数据类型(一)_python_08