学习一门语言,了解其数据结构是基础。由于Python是动态编程语言,所以在定义变量时并不需要事先指定变量的数据类型,变量的声明和初始化是同时进行的。 Python有如下五大数据结构类型: 1、Number类型 2、字符串类型 3、列表,元组 4、字典 5、集合 下面我们逐一来了解一下 本篇详细介绍Number类型一、Number类型 Number类型,又叫数字类型,是Python中最基本的数据结构类型,分为整数类型(如1、2)、浮点类型(1。1、2。2)、复合类型(12j)及布尔类型(True、False)。1。1整数类型1。1。1整数类型表达方式 整数类型表达方式有二进制、八进制、十进制与十六进制二进制:以0B或0b开头(比如0b101)八进制:以0o或0O开头(比如0o510)十进制:比如10、29、40十六进制:以0x或0X开头(比如0xA7A) 不同进制的转换函数如下:x10十进制转换为二进制,输出形式是字符串ybin(x)print(y,type(y))十进制转换为八进制,输出形式是字符串zoct(x)print(z,type(z))十进制转换为十六进制,输出形式是字符串whex(x)print(w,type(w))接收一个符合整型规范的字符串,并将字符串转换为整型s111rint(s)print(r,type(r)) 输出结果: 1。1。2大整数 Python语言非常牛X的一个特点就是可以处理大整数,别的语言可能需要通过字符串来转换(面试经常考),而Python不需要,因此Python基本不用担心数字溢出问题,这也是Python广泛应用在科学计算的主要原因。 输出超过32位的整数,伸手就来print(240) 再也不用考虑数字溢出问题了,人生苦短,我用Python! 1。1。3数字中支持下划线 Python3。6中引入的新特性,数字中支持使用下划线,方便阅读,字符串format方法也支持了‘’选项,当格式化为浮点数或整数时,以3位分隔,当格式化为’b’,’o’,’x’和’X’时,以4位分隔x1000000000000print(x)print({:}。format(100000000))print({:b}。format(100000000))print({:o}。format(100000000))print({:x}。format(100000000))print({:X}。format(100000000)) 1。2浮点类型1。2。1浮点类型表达方式 浮点类型通俗来说就是小数。一般来说就以十进制表示(如1。1),对于很大或很小的浮点型,会自动转为科学计数法表示(如1e05) 科学计数法就是用字母e或E作为幂的符号,以10为基础。 格式:xey表示的就是x乘以10的y次幂,例如:1。2e02:1。2乘以10的2次幂0。0122e3:2乘以10的3次幂2000x0。01print(x)y0。00001print(y)z10000000000000000。0print(z) 输出: 1。3复数类型1。3。1啥是复数 引入百度百科概念 复数,是数的概念扩展。我们把形如zabi(a、b均为实数)的数称为复数。其中,a称为实部,b称为虚部,i称为虚数单位。当z的虚部b0时,则z为实数;当z的虚部b0时,实部a0时,常称z为纯虚数。复数域是实数域的代数闭包,即任何复系数多项式在复数域中总有根。 哈哈,说吧,是不是大学数学没有好好学1。3。2复数类型表达方式 复数由实部和虚部两部分组成,实数部分和虚数部分都是浮点型,Python中表示复数的两种方法:abj,注意虚数部分需要加上j或者Jcomplex(a,b),其中a表示实部,b表示虚部x12jprint(x,type(x))ycomplex(1,2)print(y,type(y)) 获取复数的实部、虚部、共轭复数等(一般不搞科研也没必要知道)x12j获取复数的实部,可以看到是浮点型print(x。real)获取复数的虚部,可以看到也是浮点型print(a。imag)获取复数的共轭复数print(a。conjugate()) 1。4布尔类型1。4。1布尔类型表达方式 Python中布尔类型只有True和False两个取值,可以将这两个值翻译为真和假。1。4。2布尔类型转换 在Python中,每种类型都可以被解释为布尔类型,例如:None,0,,〔〕,(),{}被解释为False;非零数值,非空字符串被解释为Trueprint(bool(None))print(bool(0))print(bool())print(bool(〔〕))print(bool(()))print(bool({}))print(bool(10))print(bool(hello)) 而Python会将布尔类型True看作1,False看作0print(int(True))print(int(False))print(TrueFalse10) 这里需要注意的是,True是真的被当成1,False是真的被当成0,而像None,,〔〕之类的,是不能直接与布尔值比较的,只有通过bool()函数才能变成真正的布尔值。 这里使用二元运算符进行判断print(1True)print(0False)print({}False)print(bool({})False) 1。5数值运算与逻辑运算 数值运算包括算术运算与位运算。 算术运算有:加()、减()、乘()、除()、取余()、幂()、整除()。x10y3基本的算术运算print(xy)print(xy)print(xy)print(xy)print(xy)print(xy) 可以看到,运算符和的区别,是实际的除法,是向下取整除,这一点与C、Java不太一样,只能说Python一开始就考虑了数值计算的精度问题。 位运算:执行位运算时会将整数转化为二进制形式,然后从最低位开始依次每位对齐,然后执行按位与()、按位或()、按位异或()、按位反()等操作。按位与,只有两个都为1时才为1,其他都为0;按位或,只要有一个为1结果为1,两个都为0时,结果才为0;按位异或时,两个相同是为0,两个不同时为1。按位反,原来为1,现在则为0,原来为0,现在则为1 纸上得来终觉浅,绝知此事要躬行,上栗子!二进制00000001x1二进制00000010y2基本的位运算print(xy)print(xy)print(xy)二进制11111110,涉及补码概念print(x) 逻辑运算包括:关系运算、逻辑运算、身份运算。 关系运算有:等于()、不等于(!)、大于()、小于()、大于等于()、小于等于()x1y2print(xy)print(x!y)print(xy)print(xy)print(xy)print(xy) 逻辑运算:逻辑运算符主要用于判断多个条件之间的逻辑关系,例如是否都满足、只需满足一个等。Python中用not表示逻辑非,and表示逻辑与,or表示逻辑或x,y,z1,2,3if(xy)and(yz):print(Yes)else:print(No)if(xy)or(yz):print(Yes)else:print(No)ifnot(xy):print(Yes)else:print(No) 身份运算:身份运算符用于比较对象,不是比较它们是否相等,实际是看内存位置是否相等x,y,z1,True,1print(xy)print(xisy)print(xisnoty)print(xisz) 从上面例子可以看出,虽然True与1的值相等,但True并非1(内存位置不等),我们还可以看到,相同数值的变量是同一个对象,也就是说它们指向内存中同一个位置!1。6常用数学函数 Python内置了很多实用的数学函数,这里介绍下常用的7个函数,其他的用的时候再说吧 函数名 作用 abs() 返回数字的绝对值 pmod() 获取商和余数的元组 sum() 求和计算,对列表元组和集合等序列进行求和计算 round() 四舍五入,返回浮点数四舍五入的值 pow() 计算任意数n次方的值,与运算符作用类似 min() 获取指定数值或者指定序列中最小值 max() 获取指定数值或者指定序列中最大值1。7数字格式化输出 在输出数字时候,有时候需要对其进行格式化操作,比如只希望保留2位小数,整数位按4位输出,不足补0,这时候我们就要用到format函数了。 具体我们来看一组栗子x1234。1234保留2位小数print(format(x,0。2f))每千分位用,分割print(format(x,,))每千分位用,分割,并保留2位小数print(format(x,,。2f))用科学计数法print(format(x,e))用科学计数法,保留2位小数print(format(x,0。2E))数字在12个字符长度区域内靠右对齐print(format(x,12))数字在12个字符长度区域内靠左对齐print(format(x,12))数字在12个字符长度区域内居中对齐print(format(x,12))数字在12个字符长度区域内靠右对齐,整数补0print(format(x,012)) 下篇开始介绍字符串类型,欢迎点赞、关注 更多的Python学习资料,可以到这儿链接获取,持续不间断地免费更新Python资料