Python3 & 基本数据类型(一)

Python040

Python3 & 基本数据类型(一),第1张

Python提供的基本数据类型:数值(整型、浮点型、复数、布尔型等)、字符、列表、元组、字典、集合等,将它们简单分类如下:

通常被称为整型,数值为正或者负,不带小数点。

Python 3的整型可以当做Long类型使用,所以Python 3没有

Python 2的Long类型。

Python 初始化的时候会自动建立一个小整数对象池,方便我们调用,避免后期重复生成!这是一个包含 262个指向整数对象的指针数组,范围是 -5 到 256 。

Python的浮点数就是数学中的小数,类似C语言中的double。

浮点数 也就是小数,如 1.23 , 3.14 , -9.01 等等。但是对于很大或很小的浮点数,一般用科学计数法表示,把10用e替代, 1.23x10^9 就是 1.23e9 ,或者 12.3e8 , 0.000012 可以写成1.2e-5 等等。

复数 由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示,复数的实部a和虚部b都是浮点。

对 与 错 、 0 和 1 、 正 与 反 ,都是传统意义上的布尔类型。

但在Python语言中,布尔类型只有两个值, True 与 False 。请注意,是英文单词的对与错,并且首字母要大写。

在Python中,0、0.0、-0.0、None、空字符串“”、空元组()、空列表[]、空字典{}都被当作False,还有自定义类型,如果实现了 nonzero ()或 len ()方法且方法返回0或False,则其实例也被当作False,其他对象均为True

布尔值还可以用and、or和not运算。

1)、and 运算是 与 运算,只有所有都为 True , and 运算的结果才是 True

2)、or 运算是 或 运算,只要其中有一个为 True , or 运算结果就是 True

3)、not 运算是 非 运算,它是单目运算符,把 True 变成 False,False 变成 True。

例如:

由以上案例可以看出,在做四则运算的时候,明显把 True 看做 1 , False 看做 0 。

4)空值

空值不是布尔类型,只不过和布尔关系比较紧密。

空值是Python里一个特殊的值,用 None 表示(首字母大写)。None不能理解为0,因为0是整数类型,而None是一个特殊的值。None也不是布尔类型,而是NoneType。

在某些特定的情况下,需要对数字的类型进行转换。

Python提供了内置的数据类型转换函数:

int(x) 将x转换为一个整数。如果x是一个浮点数,则截取小数部分。

float(x) 将x转换成一个浮点数。

complex(x)将x转换到一个复数,实数部分为 x,虚数部分为 0。

complex(x, y): 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。

Python字符串即可以用单引号也可以用双引号括起来,甚至还可以用三引号括起来,字符串是以''或""括起来的任意文本。

例如:'abc',"xyz"等等。请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符。如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I,',m,空格,O,K这6个字符。

字符串中包括特殊字符,可以用转义字符\来标识

但是字符串里面如果有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r''表示''内部的字符串默认不转义

例如:

print r'\\\t\\' #输出:\\\t\\

字符串的一些常见操作

切⽚是指对操作的对象截取其中⼀部分的操作

语法:序列[开始位置下标:结束位置下标:步⻓]

a. 不包含结束位置下标对应的数据, 正负整数均可;

b. 步⻓是选取间隔,正负整数均可,默认步⻓为1。

find():检测某个⼦串是否包含在这个字符串中,如果在返回这个⼦串开始的位置下标,否则则返回-1。

index():检测某个⼦串是否包含在这个字符串中,如果在返回这个⼦串开始的位置下标,否则则报异常。

rfind(): 和find()功能相同,但查找⽅向为右侧开始。

rindex():和index()功能相同,但查找⽅向为右侧开始。

count():返回某个⼦串在字符串中出现的次数。

replace():替换

split():按照指定字符分割字符串。

join():⽤⼀个字符或⼦串合并字符串,即是将多个字符串合并为⼀个新的字符串。

capitalize():将字符串第⼀个字符转换成⼤写。

title():将字符串每个单词⾸字⺟转换成⼤写。

lower():将字符串中⼤写转⼩写。

upper():将字符串中⼩写转⼤写。

lstrip():删除字符串左侧空⽩字符。

rstrip():删除字符串右侧空⽩字符。

strip():删除字符串两侧空⽩字符。

ljust():返回⼀个原字符串左对⻬,并使⽤指定字符(默认空格)填充⾄对应⻓度 的新字符串。

rjust():返回⼀个原字符串右对⻬,并使⽤指定字符(默认空格)填充⾄对应⻓度 的新字符串,语法和

ljust()相同。

center():返回⼀个原字符串居中对⻬,并使⽤指定字符(默认空格)填充⾄对应⻓度 的新字符串,语

法和ljust()相同。

所谓判断即是判断真假,返回的结果是布尔型数据类型:True 或 False。

startswith():检查字符串是否是以指定⼦串开头,是则返回 True,否则返回 False。如果设置开

始和结束位置下标,则在指定范围内检查。

endswith()::检查字符串是否是以指定⼦串结尾,是则返回 True,否则返回 False。如果设置开

始和结束位置下标,则在指定范围内检查。

isalpha():如果字符串⾄少有⼀个字符并且所有字符都是字⺟则返回 True, 否则返回 False。

isdigit():如果字符串只包含数字则返回 True 否则返回 False。

isalnum():如果字符串⾄少有⼀个字符并且所有字符都是字⺟或数字则返 回 True,否则返回

False。

数据类型是每种编程语言必备的属性,只有给数据赋予明确的数据类型,计算机才能对数据进行处理运算,因此,使用正确的数据类型是十分有必要的,以下是Python编程常用的数据类型:

一、数字型

Python数字类型主要包括int(整型)、long(长整型)和float(浮点型),但是在Python3中就不再有long类型了。

1、int(整型)

在32位机器上,整数的位数是32位,取值范围是-231~231-1,即-2147483648~214748364在64位系统上,整数的位数为64位,取值范围为-263~263-1,即9223372036854775808~9223372036854775807。

2、long(长整型)

Python长整型没有指定位宽,但是由于机器内存有限,使用长的长整数数值也不可能无限大。

3、float(浮点型)

浮点型也就是带有小数点的数,其精度和机器有关。

4、complex(复数)

Python还支持复数,复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示, 复数的实部 a 和虚部 b

都是浮点型。

二、字符串

在Python中,加了引号的字符都被认为是字符串,其声明有三种方式,分别是:单引号、双引号和三引号Python中的字符串有两种数据类型,分别是str类型和unicode类型,str类型采用的ASCII编码,无法表示中文,unicode类型采用unicode编码,能够表示任意字符,包括中文和其他语言。

三、布尔型

和其他编程语言一样,Python布尔类型也是用于逻辑运算,有两个值:True(真)和False(假)。

四、列表

列表是Python中使用最频繁的数据类型,集合中可以放任何数据类型,可对集合进行创建、查找、切片、增加、修改、删除、循环和排序操作。

五、元组

元组和列表一样,也是一种序列,与列表不同的是,元组是不可修改的,元组用”()”标识,内部元素用逗号隔开。

六、字典

字典是一种键值对的集合,是除列表以外Python之中最灵活的内置数据结构类型,列表是有序的对象集合,字典是无序的对象集合。

七、集合

集合是一个无序的、不重复的数据组合,它的主要作用有两个,分别是去重和关系测试。