只有胜利才能生存,只有成功才有代价,只有耕耘才有收获。
——佚名
前言
为了能让大家更加看懂我的文章,小编整理了一下文章的大致框架。以后可能也是用这个框架写文章。
今天我们来讲Python的几种数据类型。
Python的数据类型可以分为一下几类:
文章目录
- 前言
- 一、整型 -- int
- 进制之间的转换
- 小整数对象池
- 二、浮点型 -- float
- 数学库math
- 三、布尔型 -- bool
- 布尔类型的数值计算
- 布尔类型的逻辑计算
- 四、字符型 -- str
- 字符的下标
- 字符串的切片
- 五、特殊类型 -- None
- 总结
- 结语
一、整型 – int
关于整型的几个知识点:二进制之间的转换、整数长度、小整数对象池
进制之间的转换
print(bin(20)) # 十进制转二进制 bin() 方法
print(oct(20)) # 十进制转八进制 oct() 方法
print(hex(20)) # 十进制转十六进制 hex()方法
# 输出结果如下
0b10100 # 0b 是二进制前缀
0o24 # 0o 是八进制前缀
0x14 # 0x 是十六进制前缀
== 整数的长度为32位 ==
print(id(1))
print(id(2))
# 输出结果如下
140727506071824
140727506071856
# 通过两内存地址相减, 我们可以得出整数的长度为32
小整数对象池
建议在Python终端操作
小整数对象池,是为了节约开销,增快运行速度而设计的。在【-5,256】这个区间范围内的数字,若两个数的值一样,则内存地址一样。
>>> a = 1
>>> b = 1
>>> print(id(a))
140727506071824
>>> print(id(b))
140727506071824
>>> c = 257
>>> d = 257
>>> print(id(c))
2136219315728
>>> print(id(d))
2136219315664
>>>
# 建议在Python终端运行,使用pycharm可能无法展示效果
二、浮点型 – float
浮点数,就是有小数的数
若整数强转浮点数,则直接取浮点数的整数部分
int(3.4) # 返回结果 3
int(-3,4) # 返回结果 -3
数学库math
这里介绍一个python的math库的几种方法
import math # 使用之前先导入数学库
print(math.ceil(4.1)) # math.ceil() 方法, 向上取整。与整数后的小数无关 返回结果 5
print(math.floor(4.6)) # math.floor()方法, 向下取整。 返回结果 4
print(math.pow(3, 3)) # math.pow() 方法, 幂次运算,默认返回浮点数。 返回结果 27.0
print(math.sqrt(36)) # math.sqrt() 方法,平方根,默认返回浮点数。 返回结果 6.0
# ——————————————————— 分割线 ——————————————— #
print(round(5.1)) # 四舍, 与小数有关。 返回结果 5
print(round(5.6)) # 六入, 与小数有关。 返回结果 6
# 如果小数部分为 0.5 需要注意
print(round(8.5)) # 当整数部分为偶数,小数部分为0.5时, 向下取整。返回结果 8
print(round(9.5)) # 当整数部分为奇数,小数部分为0.5时, 向上取整。返回结果 10
口诀:四舍六入五成偶 (这里是指小数部分),向上取整就是向后取一位整数
# ——————————————————— 分割线 ——————————————— #
print(abs(-10)) # abs()方法, 绝对值。 返回结果 10
三、布尔型 – bool
布尔类型就分为两种 True 和 False
True 为真,数值为 1
False 为假, 数值为 0
在数值中,除了 0 和 0.0 其他的都为True
在字符中,‘0’, ’ ’ 零和空字符也算一个字符,为True
布尔类型的数值计算
True + 1 = 2
False + 1 = 1
布尔类型的逻辑计算
print(10 and 20) # 返回结果 20 两个同时为真时,返回第二个结果
print(10 and 0) # 返回结果 0 有假则返回假
print(10 or 20) # 返回结果 10 有真则返回真
print(0 or 0.0) #返回结果 0.0 两个同时为假是,则返回第二个
这里可以总结一下
and : 有假则返回假, 两个同时为真时,返回第二个结果
or : 有真则返回真, 两个同时为假时,返回第二个结果
四、字符型 – str
字符型,就是用引号括起来的字母,数字或者汉字
字符类型是不可变类型
字符的下标
下标,也叫索引。是字符在内存空间的一组序号,从零开始排列
打个比方,一个字符代表一个人。在‘hello’ 这串字符中,有五个人。但是他们的坐位是从零开始依次排序的。h是第 0 个坐位,所以 h 的索引为 0 , e 是第一个坐位,所以 e 的索引为1 ,以此类推。
字符串的切片
其格式为: 字符串【开始位:结束位:步长】
a = 'hello world'
print(a[::-1])
# 开始位,开始切片的索引, 开始位字符能取到
# 结束位,到到哪个索引结束,结束位字符取不到
# 步长,默认为1, 当步长为 2 时,则隔一个字符取一个。当步长为 -1 时, 则逆序输出
# 切片遵循左闭右开原则,左边的开始位的索引所对应的值能取到,右边的结束位的索引所对应的值取不到
五、特殊类型 – None
None 不属于任何类型,None 是独立存在的
None 有点像真空的感觉,没有任何东西
总结
本章主要简单讲解了Python的基本数据类型,
其中比较容易出错的是 :
- 小整数对象池
- round()方法
- 布尔类型的逻辑运算
- 字符串的切片
对于初学者,这都需要大量的实践。同时也欢迎各位大佬能够批评指正。
结语
成功往往在多次失败后才姗姗来到。每一次跌倒后重新站起来,都能使你的本领更加强大,信心更充足。不要轻言放弃,持之以恒去做事,当挫折在脚下堆积成梯,你也就获得了进步的机会。-----来源:人民日报