常见的几个数据类型
1. 数据类型并不神秘
人类世界对万事万物都有种类划分,例如:
哺乳动物
人、猫、马、鸭嘴兽....等等
蔬菜
西红柿、波菜、茄子....等等
水果
西瓜、桃子、苹果....等等
世间的万物可以有类型,那数据为什么不能有类型呢?
数据类型:就是对数据分类的方式而已,各种不同的数据类型有不同的特点。
数据类型举例,常见的数据类型:
123 是整数类型
3.14 正常表达叫小数,计算机里叫浮点类型
"我是唐三,我最爱小舞" 一段文字一句话,在计算机里叫字符串类型
2. 最常见的4种数据类型
我们这一章讲四种最常见的数据类型:
数据类型 | 举例 | 备注 |
---|---|---|
整型 | 123, -123 | 就是我们常见的整数 |
浮点数 | 3.13, -233.121 | 也是我们经常所说的小说 |
字符串 | "Hello world", "李文凯老师" | 各种文字和符号 |
布尔 | True 和 False | 真和假,对或错 |
空值 | None | 不存在值即为空,如变量没有被定义,直接使用 |
注:print()为打印显示
type( )为获得当前变量的类型
我们用代码实现一下各种类型的定义。
3. 整型定义
我们在上面讲了整型就是整数。我们现在可以尝试定义一个整数:
my_int = 123
print(my_int)
print(type(my_int))
这就打印出来了一个整型的123。
执行结果如下:
123
<class 'int'>
16进制整型
16进制是:0 1 2 3 4 5 6 7 8 9 a b c d e f ,16个字符。A代表的是10 F代表的是15。
以0x 开始,后面写上对应的数。
#16进制的取值范围最大为0-f,即0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
shiliu = 0x6ff
print(shiliu)
print(type(shiliu))
注意:为了方便大家认识,李文凯老师故意写成了拼音定义变量,在真实的工作中请使用英文定义变量,显得更有逼格一些。
输出结果:
1791
<class 'int'>
4. 浮点定义
所谓浮点类型,可以理解为:我们数学里面的小数。
【注意】关于精度、取值范围和科学记数法型声明不是学习的重点。因为此块在实际开发中用的特别少。我们将此块的知识点的学习标注为,了解级别。
声明方式分为两种:
- 普通声明
- 科学声明
普通型浮点声明
#声明变量fudian的值为12121.3132
fudian = 12121.3132
print(fudian)
print(type(fudian))
#声明变量fl 的值为0.8873
fl = 0.8873;
print(fl)
print(type(fl))
运行输出结果:
12121.3132
<class 'float'>
0.8873
<class 'float'>
科学记数法声明(学习级别:了解)
在小数后面加上e,后面写上e。下面的例子等价于:1.23x105
kexue = 1.23e5
print(kexue)
print(type(kexue))
运行输出结果:
123000.0
<class 'float'>
5. 字符串定义
字符串在英语里面的表达是string,我们可能遇到最多的一个数据类型就是字符串类型了。现实生活中到处看到的文字,都可以看作为字符串。
用引号括起来的文字,我们可以把他理解为字符串。
字符串定义有三种方式,第一种单引号中插入文字:
' 里面写上内容'
第二种,双引号中插入文字:
" 这个里面写上字符串"
第三种,三个号引中间写上内容(三个双引号和三个单引号均可):
"""
中写写上大段的内容
"""
'''
三个单引号中间写写上了对应的内容 '''
注意:三个引号""" 的声明方式与注释比较像。但是,注释不会赋值给变量。注释也不会写在等号后面。
例如,下面我们定义一组中文字符串:
# coding=utf-8
my_cn = "我愿变成童话里,你爱的那个天使,有房有车有票子"
print(my_cn)
print(type(my_cn))
执行结果如下:
我愿变成童话里,你爱的那个天使,有房有车有票子
<class 'str'>
例如,下面是一个字符串的123:
my_str = "123"
print(type(my_str))
print(my_str)
注意:整型的123 与字符串的 "123",在计算机不是同一个东西。只是人的肉眼看到的显示出来的一样而已。
执行结果如下:
<class 'str'>
123
声明多行字符串试一下:
#coding=utf-8
my_flag = """
曾经有操蛋的爱情摆在我面前,我珍惜了。
当我得到的时候才感到后悔莫及。
如果非要在这段爱情前面加上一段三个字,
我愿意说三个字:滚犊子
"""
print(my_flag)
print(type(my_flag))
输出结果:
曾经有操蛋的爱情摆在我面前,我珍惜了。
当我得到的时候才感到后悔莫及。
如果非要在这段爱情前面加上一段三个字,
我愿意说三个字:滚犊子
<class 'str'>
再次说明注意项:三个引号""" 的声明方式与注释比较像。但是,注释不会赋值给变量。注释也不会写在等号后面。
6. 布尔类型定义
布尔类型是一个非汉语的解释,在英文当中的泊来之物。
所谓布尔类型,汉语翻译过来之后,更好的解释是用道家中易经的语言来进行解释,即为:
- 阴/阳
- 男/女
- 真/假
- 对/错
- 存在/不存在
- 0/1 等等.... ...
是人类繁衍过程中,我们对逻辑判断的一种总结。
例如电视剧里面经常讲到的一句话: 如果那个漂亮妹子(帅哥)被我泡到手了,我死都愿意。
用计算机的代码完全可以写出这句话:
如果我泡到了漂亮妹子
则:我愿意去死
如果没有泡到
则:我不愿意去死
在我们的思维过程当中,始终在遵循上述的思考模式来思考问题。因此,前辈们为我们进行了总结,在计算机里面把这种判断和思考方式,叫作布尔判断。为这种思考方式专门做了一个数据类型,即为布尔类型。
布尔类型就是:真和假。 在英文把真和假翻译过来就是:
- True(真)
- False(假)
因此,我们在Python代码里面可以这样声明。
注意:和有些语言不一样,这里的T 和F 需要大写。
#声明一个变量(拼音)为布尔
buer = True
#声明一个变量(英文)
my_bool = False
print(buer)
print(my_bool)
print(type(buer))
print(type(my_bool))
看看运行结果:
True
False
<class 'bool'>
<class 'bool'>
7. (None)空类型
None在Python里是一个特殊的数据类型:空。空是值不存在,不是指0。
0是一个计数单位,是有一个有意义的数。
而None 是指一个东西不在这个世界上存在。
my_name = None
print(type(my_name))
输出结果可以看出,None是一种独立的数据类型:
<class 'NoneType'>
整型知识扩展(了解知识,小白可以不用学习):
在日常生活里整数是没有范围的,可以无穷大,也可以负的无穷小。
Python的整数类型与其它语言表示的整数类型不太相同,其它语言整型的取值范围与机器位数有关。例如,在32位机器上,整型的取值范围约是-2^31到2^31,在64位的机器上整型的取值范围约是-2^63到2^63。而Python的整型能表示的数值仅与机器支持的内存大小有关,也就是说Pyhton可以表示很大的数,可以超过机器位数所能表示的数值范围。
浮点型知识扩展(了解知识,小白可以不用学习):
浮点也需要转成二进制,二进制在转换的过程当中会产生精度丢失的问题。所以,如果进行精密计算的时候,要注意哟。
本文原创,转载需注明来源:Python李文凯