网站首页 > 技术文章 正文
CDA数据分析师 出品
Python中的数字(Digital)与数学中的数字相同,可以通过各种各样的运算符实现各种计算,在Python中数字类型的数据格式分为以下几种:
1.整数型(integer)
2.浮点数(float)
3.复数(Complex)
4.布尔(Boolean)
接下来我们就介绍一下这种数据类型在Python中的具体运用
基础算术运算符
在具体的认知Python中的数字类型格式之前,我们需要先了解一下Python中的基础算术预算符,他们与现实中的运算符原理相同,而在Python中他们表示为计算机可以识别的算术运算符,具体格式如下:
整数类型
在Python中整数类型(简写为int)又称为整型,由正整数、0、负整数构成,不包括小数、分数。在Python中整数的长度不受限制,但是受到可用内存的限制。
1.加减乘除运算
int1 = 10 int2 = 3 count = int1+int2 print('加法和为:%d'%(count))print('减法差为:%d'%(int1-int2))print('乘法积为:%d'%(int1*int2))print('除法商为:%d'%(int1/(int2+2)))result = (int1+int2)*(int1-int2)/7-2print('加减乘除混合运算:%d'%(result))
在加减乘除混合运算可以看出,Python运算也存在优先级,小括号里边的最先运算,然后进行乘除运算,在进行加减运算,与数学中的运算优先级是相同的。
2.取余、幂、取整除运算
x = 20y = 3print(x%y)print(x//y)print(x**y)
数学运算符中,幂的优先级最高,然后为乘、除、取余、取整、加、减。
Ps:0是不能进行整除
浮点数
浮点数(float)又称为小数,在数学中对应的是实数,在Python中浮点数是带小数点的数字。由于电脑内存中存储的浮点数的位数有限,所以超过指定长度后,末尾将采取近似值。所以浮点数并不一定是精确值。
print(10.0/3)
从上面可以看出,只要公式中存在一个浮点数,那么计算出来的结果就是浮点数。
print(10*2+0.1)print(1.1+0.9)print(4.0/2.0)
复数
复数(Complex)由实部和虚部组成,把实数扩展到虚数,它的数学表示形式为a+bj(a、b均为实数)。a称为实部,b称为虚部,j(J)为虚数单位(j2=-1),bj称为虚数。
(1-2j) #Python语言中复数的表现形式(1-2j)*(2-3j) #复数的乘法
复数的实部和虚部,我们可以通过.real和.imag方法来检索进行确认
(1-2j)(1-2j).real(1-2j).imag
布尔
布尔(Boolean)又称为逻辑值,在Python中用True和False表示,可以用于逻辑判断。这种数据类型是一种特殊的整数类型。True可以用1替换,代表为"真";False可以用0替换,代表为"假"。
布尔的逻辑运算方法与数学完全一致,逻辑运算符如下表格:
True and TrueTrue and FalseTrue or FalseFalse or Falsenot Truenot False
Python中二进制与高级运算符
二进制(了解)
二进制(Binary)数据是用0和1两个数字来表示的数,他们的基数是2,进位规则是"逢二进一"。在Python中用0b来表示二进制数。二进制码(范围为00000000~01111111)对应的十进制码可以在网上查询ASCII表,在ASCII表中可以找到00001110对应的十进制码为14。
0b1110 #输出十进制数bin(14) #bin()函数可以将十进制数转换为二进制数
PS:冯诺依曼计算机的底层代码就是二进制码,所以利用二进制码的计算速度最快。
二进制的运算符
PS:m、n都为二进制数,x为整数。
在ASCII表中字符5的二进制位为00110101,字符a的二进制为01100001,通过上表中的运算符,我们对这两个数进行二进制位运算。
1.与运算(&)
0b00110101&0b01100001
输出十进制33,对应的二进制为00100001。
下图是上面代码执行过程中的二进制位的详细计算过程,第①排与第②排的二进制数位并进行运算,运算的结果为第③排二进制的对应位值。
2.或运算(|)
0b00110101|0b01100001 #输出结果为十进制117bin(117) #对应的二进制为01110101
3.异或运算(^)
0b00110101^0b01100001 #输出结果为十进制84bin(84) #其二进制为01010100
4.反转运算(~)
~0b00110101 #输出十进制-54bin(-54) #对应的二进制为-00110110
5.左移动运算(<<)
0b00110101<<2 #输出结果为十进制数212bin(212) #输出结果为11010100
6.右移动运算(>>)
0b00110101>>2 #输出十进制值13bin(13) #输出二进制值00001101
PS:我们还可以通过chr(x)函数把x转为ASCII码字符,x为十进制数
chr(33)chr(117)chr(84)chr(-54)chr(212)chr(13)
比较运算符
Python中的比较运算符如下,比较运算符可以对字符串、整数、列表、元组、字典等进行比较运算操作。
下面我们对比较运算符进行实际代码运算。
1.等于比较
age1,age2,age3 = 10,9,10age1 == age2 #值不同返回Falseage1 == age3 #值相同返回TrueTrue == True #True与True相同返回TrueTrue == False#True与False不同返回Falseage == 10.00 #整数与浮点数比较5-2j == 5+2j #复数与复数比较
2.其他比较
age1,age2,age3 = 10,9,10age1 != age2 age1 >= age2age1 <= age3age1 > age2age1 < age2
3.字符串比较
'a' == 'b''ab' == 'ab''a' == 1
4.运算优先级
比较运算符优先级低于算术运算符、位运算符、高于逻辑运算符。
5+1 >5 and True #先计算5+1=6,然后6>5得True,然后True and True运算(5+1)*2 > 5 and True #小括号内先计算,可以用小括号改变运算次序
赋值运算符
在编程中类似于x = a+b把=作为赋值符合比较常见的,但是在Python中有一种新的赋值表达方式(又称增量赋值)。如下表所示。
PS:num,x,y为任意数字,m为正整数,B、B1、B2为二进制数
x,y = 10,20x + yX += yprint(x)
PS:需要注意的是,使用普通赋值的时候,x本身值不变
数据类型转换
当一种类型的数据被使用的时候,我们有可能需要将它转换为其他类型的数据,Python为此提供了一些内置的函数,方便我们进行转换。
int(3.2)int('3')float(10)complex(2,2)complex(2.5)str(5+2j)bin(15)oct(10)hex(20)chr(15)ord('a')
更多优质内容及精彩资讯,点击【了解更多】进入!
猜你喜欢
- 2024-11-20 Python基础编程——算术运算
- 2024-11-20 Python字符串方法之-字符串填充
- 2024-11-20 Python第14题:最长公共前缀【leetcode】
- 2024-11-20 从 0 到 1:构建强大且易用的规则引擎
- 2024-11-20 分享3个干货满满的Python实战项目,点赞收藏
- 2024-11-20 python笔记8:静静一起来学习-字符串相关方法
- 2024-11-20 零基础Python完全自学教程14:Python中的序列知识详解
- 2024-11-20 你需要了解的最重要的Python概念
- 2024-11-20 Python整数缓存机制
- 2024-11-20 老鸟进阶必备技能,看懂显示器参数
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)