每种开发语言都有自己的数据格式,每种数据格式都有自己的应用场景,Python也不例外,本章节以最简形式来说明Python常见的数据格式。限于篇幅原因,明哥只将重点内容写出来,太细节的内容以后会在项目实践中进行补充说明。
在进入正文之前,先看一段代码:
if __name__ == '__main__':
a = '1'
b = 1
c = True
d = 0.01
d1 = 3.14j
print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(d1))
先直接看一下输出结果吧。
<class 'str'>
<class 'int'>
<class 'bool'>
<class 'float'>
<class 'complex'>
说明一下上段代码中的关键点:
type是python中一个基础函数,可以显示基础数据的数据类型,Python的基础类型有以下几种:
- Int 整型-包含int型、float型、complex型,
- Bool 布尔型
- Str 字符串除了以上几种数据类型,Python中还有字典,元组,集合等高级数据类型,还有通过实现类定义,实现自己的数据类型,这些高级类型我将在后续章节中进行讲解。
正文开始,下面就不同的类型进行较为详细的说明:
整型:
Python中任意大小的整数,当然包括负整数,都可以定义为整型,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。计算机本身使用的是二进制,你也可以通过 hex(16)、oct(8)、bin(8)来分别进行整形数据的转换,把整型转换为你所要的类型。例如:0xff00,0xa5b4c3d2,等等。
Python 中数学运算常用的函数基本都在 math 模块、cmath 模块中。
Python math 模块提供了许多对浮点数的数学运算函数。
Python cmath 模块包含了一些用于复数运算的函数。
实际操作可以自行进行进行官方文档进行阅读。
常见的操作函数:
random() 生成0-1随机实数
choice(seq)从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数
布尔型:
布尔类型只有True和False两种值,但是布尔类型有以下几种运算:
与运算:只有两个布尔值都为 True 时,计算结果才为 True。
True and True # ==> True
True and False # ==> False
False and True # ==> False
False and False # ==> False
或运算:只要有一个布尔值为 True,计算结果就是 True。
True or True # ==> True
True or False # ==> True
False or True # ==> True
False or False # ==> False
非运算:把True变为False,或者把False变为True:
not True # ==> False
not False # ==> True
字符串
字符串是 Python 中最常用的数据类型。我们可以使用引号( ' 或 " )来创建字符串。字符串的中可以进行转义,运算, 也可以通过正则进行替换。通常为保证编码的可识别,我们需要在文件头增加一行# -*- coding: utf-8 -*-
字符串的编码
由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。
x = b'ABC'
这样就定义了一个二进制的字符串,当字符串中包含中文时,因为中文编码的范围超过了ASCII码的范围,所以我们要用
>>> b'ABC'.decode('ascii')
'ABC'
>>> b'\\xe4\\xb8\\xad\\xe6\\x96\\x87'.decode('utf-8')
'中文'
来进行编码相互转换的处理。
字符串的输出
在print打印输出时,我们需要对数据类型进行格式化。
print ("欢迎来到 %s 的博客 ,你是第%d 个访客!" % ('明哥', 10000))
关于格式输出的内容明哥引用一下w3c的文档列表,就不再细说
备:当你不知道是什么类型是,可以用%s进行输出,python会自动帮你转换成字符型。
关于字符串的操作,方式很多,此处再引用一下w3c的列表进行说。
下表实例变量 a 值为字符串 "Hello",b 变量值为 "Python":
基础类型篇的介绍到此基本结束,如果有遗漏的地方,可以进行评论或私聊,我将给予解答。
本系列教程及源码地址:https://gitee.com/python_play/study_python
最后:如果你正在学习Python的路上,或者准备打算学习Python、明哥会陪着你陪你一起共同进步!
手打不易,有用的话,请记得关注转发。