数据类型之数字
一、基础
Python中数据类型主要分为以下几类:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
数字当中包含:
- int
- float
- bool
- complex
>>> a = 10
>>> type(a)
<class 'int'>
>>> b = 10.2
>>> type(b)
<class 'float'>
>>> c = True
>>> type(c)
<class 'bool'>
>>> d = 2 + 3j
>>> type(d)
<class 'complex'>
数字类型之间是可以运算的,比如:
>>> 3 + 2
5
>>> 3.6 - 1
2.6
>>> True + 10
11
看到这个应该知道为什么bool类型也被归于整数了吧,True和1是等价的,False和0之间是等价的。
另外就是说明一下除法、整除、取余(画图说明)
>>> 6 / 4
1.5
>>> 6 // 4
1
>>> 6 % 4
2
其实,Python中还支持其它的数字类型,比如Decimal(完全精确的,可用于金钱的计量)、Fraction(分数),后面如果碰到了再详细说明,先有个印象。
详情参考:官网
二、格式化输出
- 整数
>>> a = 10
>>> print("%d"%a)
10
- 浮点数
>>> a = 10.2
>>> print("%d"%a)
10
>>> print("%f"%a)
10.200000
>>> print("%.1f"%a)
10.2
三、类型转换
内置函数:https://docs.python.org/zh-cn/3.10/library/stdtypes.html#typesnumeric
int(x) 将 x 转换为整数
float(x) 将 x 转换为浮点数
complex(re, im) 一个带有实部 re 和虚部 im 的复数。im 默认为0。
所以可以直接定义数据,自己推导出类型,也可以通过内置函数创建数据类型。
>>> a = int(3)
>>> a
3
>>> b = float(10)
>>> b
10.0
四、案例
计算任意一个三数字的个位、十位、百位的平方和。比如:327
3的平方 + 2的平方 + 7的平方
>>> a = 327
>>> x = 327 // 100
>>> x
3
>>> y = (a - x * 100)
>>> y = (a - x * 100) // 10
>>> y
2
>>> z = (a - x * 100 - y * 10) # 相当于 a % 10
>>> z
7
>>> x**2 + y**2 + z**2
62
扩展:任意位数的数字
五、不可变类型
# 地址不同,是不可变的数据类型
>>> a = 5
>>> id(a)
140737203808160
>>> a = 6
>>> id(a)
140737203808192
作者:iveBoy
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。