作者的话
不管是哪种编程语言都会有基本的数据类型,它们之前有的会存在共性,有的也会有独特的特性,而它们各自独特的性质,才使得它们都具备自己的编程特色;了解这些基本数据类型,熟悉它的语法,是你进行编程的基石,这边部分内容不能说你一遍就能全部记住,往往是需要三到五遍,所以耐心的学习记忆才是根本,多去使用才能领会。所以学习此篇的关键在于,动手去Python环境去验证我一下我这些内容是否正确,一定要动手输入,自己去判断
基本数据类型
本篇会详细介绍Python的基本类型,包括整形、浮点型;10、8、2、16进制数的意义和转换关系;布尔类型;字符串与字符串常见运算操作。本篇不会把所有细节都能涉及到,需要大家不断地使用中理解和探索
Number 数字
这只是一个大分类,在其他的一些编程语言中,浮点数还会细分,单精度:float、双精度:double,而整数 会有 short 、 int 、long
而对Python,只有int 整数 float浮点型,至于上述的你就可以忽略了
什么是整数? 1,4,69,-9,78等等,就是数学定义上的整数
什么是浮点数?1.0, 3.3,-9.8等等,数学定义上的小数
暂且这么理解吧。自己去Python环境上去测试吧!
在编辑器里面去输入下面的一些代码吧:
>>> type(1)
>>> type(0.1)
>>> type(1+0.1)
>>> type(1+1)
>>> type(1*1)
>>> type(1*1.9)
# 得到 1.0 是个浮点型 为什么?
>>> type(2/2)
# 得到 1
>>> type(2//2)
type()
这个方法是取的括号内的类型
/
是得到 自动取浮点数,//
整除,舍去浮点数部分,(Python2此处有区别)
我们此处的就简单介绍到这个地步,更多深入的部分,在今后的使用中你会找到更多的
进制
在这里我们简单的聊一聊十进制、二进制、八进制、十六进制,这并不是Python特有,而是基本的数学概念
十进制:满10进1;这个是我们日常生活中所接触的
0、1、2、3、4、5、6、7、8、9、10
二进制:满2进1;计算机语言
0、1、10、11、100、101
八进制:满8进1;
0、1、2、3、4、5、6、7
十六进制:满16进1;通常在一些硬件控制里面,通过十六进制来传输信息,进行控制等
0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
在Python里面表示进制
二进制:
0b10
相当于10进制的2
八进制:
0o10
相对于10进制的8
十六进制:
0x10
相当于10进制的16
;0x1F
相对于10进制的31
在Python里面进制转化
bin()
方法将其转化为二进制
>>> bin(10) # 10进制转2进制
'0b1010'
>>> bin(0o7) # 8进制转2进制
'0b111'
>>> bin(0xE) # 10进制转2进制
'0b1110'
>>>
int()
方法将其转化为十进制
>>> int(0b111)
7
>>> int(0o77)
63
>>> int(0xF)
15
oct()
方法将其转化为八进制
>>> oct(888)
'0o1570'
>>> oct(0b10101)
'0o25'
>>> oct(0xD)
'0o15'
hex()
方法将其转化为十六进制
>>> hex(888)
'0x378'
>>> hex(0o777)
'0x1ff'
>>> hex(0b111)
'0x7'
如果你不能很好地理解,你可以打开Python的环境,输入这些数然后尝试去理解
其实进制还有其他,比如:1分钟60秒,24小时等于一天等等。。
布尔型bool
真假
>>> True # 首字符必须大写
True
>>> type(True)
<class 'bool'>
>>> False
False
>>> type(False)
<class 'bool'>
>>> int(True) # 这也是为什么布尔归类到number下面
1
>>> int(False)
0
>>> bool(1)
True
>>> bool(2.2)
True
>>> bool(0) # 数字除了0 其余都是真,只有0是假
False
>>> bool('kkk')
True
>>> bool('') # 字符串也是如此,空值都是假
False
>>> bool([1,2,9]) # 对于后面要学习的一些列“组”,只要是空,都为假
True
>>> bool({1,2,2})
True
>>> bool(None) # None表示空类型
False
bool()
方法判断真假
复数complex
只简单了解如何表示,想学习更多,那你一定很喜欢数学吧,那自然就不需要我讲了
>>> 36j
36j
这里讲一讲我们学习编程要把握主次,对于一门编程语言,要学习的知识很多,我们不能一蹴而就,所以要学会把握主次,先学习我们使用频繁高,即业务上使用多的,我们只能说先掌握我们会使用到的,并且这样子学习会不断促进我们学习更加深入,如果一直钻牛角尖,去钻研生僻知识会磨损自己的学习兴趣。
对于数据类型,我前段时间也除了一个基本数据类型解释,我这里就不在做其他解释了,大家通过传送门去阅读吧。