python3数据类型–数字、布尔值、空值

avatar 2020年2月28日18:32:31 评论 1,029 次浏览

数字(number)

数字包含整数,浮点数,复数。是把数字进行数值存储,不允许改变,改变后会进行重新分配内存空间。查看内存空间上面已经说过可以使用id()函数参考,下面我们测试一下,使用同一个名字不同的数值,它的内存地址是否有什么变化。

#!/usr/bin/python3
#coding:utf-8
#吴老二个人博客~~~www.wulaoer.or
wulaoer = 2
print("没有改变的内存地址的值",id(wulaoer))
wulaoer =3
print("改变后内存地址的值",id(wulaoer))

输出结果:

没有改变的内存地址的值 1621191728
改变后内存地址的值 1621191760

输出的内存地址是不一样的,我们无法对number进行修改或者进行增加,增加或者修改也就意味着从新赋值。也就改变了原来的内存地址。既然不能修改,那就看看number的类型转换吧。number的内置类型包含整数、浮点数、复数,这些数据类型相互之间是如何进行转换的,看一下下面的几个例子:

#!/usr/bin/python3
#coding:utf-8
#吴老二个人博客~~~www.wulaoer.or
#整数转浮点数
wulaoer = 27
print("整数转浮点数",float(wulaoer),"数据类型",type(wulaoer))
wulaoer1 = float(wulaoer)  
print("转换数据类型后进行重新赋值",type(wulaoer1),wulaoer1)
#浮点数转整数
print("浮点数转整数",int(wulaoer1)) #浮点数转整数不会四舍五入,切记

#整数转复数
print("整数转浮点数",complex(wulaoer),"数据类型",type(wulaoer))
wulaoer2 = complex(wulaoer) #这是单独使用一个整数转换复数,也可以使用两个整数转换复数
print("整数转浮点数后重新赋值",type(wulaoer2),wulaoer2)
print("一个整数,一个浮点数转换成一个复数",complex(wulaoer,wulaoer1)) #使用一个整数一个浮点数转换成一个复数

这里用到了数据类型函数type(),先说一下number的内置函数,整数的内置函数是int(),浮点数的内置函数是float(),复数的内置函数是complex()函数。我们在使用转换的时候想转换成什么类型直接使用内置函数即可。这里说明一下复数不能转换成整数或者浮点数,python不支持,切记。

布尔值(Boolean)

在python中使用True和False表示布尔值,这里注意大小写。布尔值主要用在运算上,这里虽然没有对运算进行讲解,不要紧,这里的例子都是基本的运算,下个章节会对运算进行详细描述。先看下面的例子:

#!/usr/bin/python3
#coding:utf-8
#~~~~~~~~~~~~www.wulaoer.org 吴老二个人博客~~~~~~~
print("判断3大于4",3>4)
print("判断8小于于10",8<10)
wulaoer = 'python3'
w = type(wulaoer)
print("判断字符串数据类型",w==str)

输出结果:

判断3大于4 False
判断8小于10 True
判断字符串数据类型 True

针对整数的判断,满足判断为True,否则False。其实这个判断就是一个if判断,条件满足为True,不满足为False。布尔值没有增删改查的操作

空值(None)

在python中,None表示该值是一个空对象,空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。None不支持任何运算,和其他数据类型比较永远是False。None有自己的数据类型NoneType。

#!/usr/bin/python3
#coding:utf-8
#~~~~~~~~~~~~www.wulaoer.org 吴老二个人博客~~~~~~~
wulaoer= print('python3')  #print()函数就是一个对象,输出对象
print("输出对象",wulaoer)

输出结果:

python3
输出对象 None

在函数中没有return语句的函数定义,都会返回None,定义retrun的函数返回retuen的值。没有学过函数,这里先简单说一下,定义了两个函数:

#!/usr/bin/python3
#coding:utf-8
#~~~~~~~~~~~~www.wulaoer.org 吴老二个人博客~~~~~~~
def login():
	print("函数ruby()打印的结果","运维服务")
	return "运维服务"
def ruby():
	print("函数ruby()打印的结果","ruby")
print("调用函数login()",login())
print("调用函数ruby()",ruby())

输出结果:

函数ruby()打印的结果 运维服务
调用函数login() 运维服务
函数ruby()打印的结果 ruby
调用函数ruby() None

对于有return的函数,返回的值和没有return的函数返回的结果是不一样的。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: