百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python中的数字类型格式与运算(python语言中的数字类型)

off999 2024-10-07 12:13 29 浏览 0 评论


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')

更多优质内容及精彩资讯,点击【了解更多】进入!

相关推荐

阿里云国际站ECS:阿里云ECS如何提高网站的访问速度?

TG:@yunlaoda360引言:速度即体验,速度即业务在当今数字化的世界中,网站的访问速度已成为决定用户体验、用户留存乃至业务转化率的关键因素。页面加载每延迟一秒,都可能导致用户流失和收入损失。对...

高流量大并发Linux TCP性能调优_linux 高并发网络编程

其实主要是手里面的跑openvpn服务器。因为并没有明文禁p2p(哎……想想那么多流量好像不跑点p2p也跑不完),所以造成有的时候如果有比较多人跑BT的话,会造成VPN速度急剧下降。本文所面对的情况为...

性能测试100集(12)性能指标资源使用率

在性能测试中,资源使用率是评估系统硬件效率的关键指标,主要包括以下四类:#性能测试##性能压测策略##软件测试#1.CPU使用率定义:CPU处理任务的时间占比,计算公式为1-空闲时间/总...

Linux 服务器常见的性能调优_linux高性能服务端编程

一、Linux服务器性能调优第一步——先搞懂“看什么”很多人刚接触Linux性能调优时,总想着直接改配置,其实第一步该是“看清楚问题”。就像医生看病要先听诊,调优前得先知道服务器“哪里...

Nginx性能优化实战:手把手教你提升10倍性能!

关注△mikechen△,十余年BAT架构经验倾囊相授!Nginx是大型架构而核心,下面我重点详解Nginx性能@mikechen文章来源:mikechen.cc1.worker_processe...

高并发场景下,Spring Cloud Gateway如何抗住百万QPS?

关注△mikechen△,十余年BAT架构经验倾囊相授!大家好,我是mikechen。高并发场景下网关作为流量的入口非常重要,下面我重点详解SpringCloudGateway如何抗住百万性能@m...

Kubernetes 高并发处理实战(可落地案例 + 源码)

目标场景:对外提供HTTPAPI的微服务在短时间内收到大量请求(例如每秒数千至数万RPS),要求系统可弹性扩容、限流降级、缓存减压、稳定运行并能自动恢复。总体思路(多层防护):边缘层:云LB...

高并发场景下,Nginx如何扛住千万级请求?

Nginx是大型架构的必备中间件,下面我重点详解Nginx如何实现高并发@mikechen文章来源:mikechen.cc事件驱动模型Nginx采用事件驱动模型,这是Nginx高并发性能的基石。传统...

Spring Boot+Vue全栈开发实战,中文版高清PDF资源

SpringBoot+Vue全栈开发实战,中文高清PDF资源,需要的可以私我:)SpringBoot致力于简化开发配置并为企业级开发提供一系列非业务性功能,而Vue则采用数据驱动视图的方式将程序...

Docker-基础操作_docker基础实战教程二

一、镜像1、从仓库获取镜像搜索镜像:dockersearchimage_name搜索结果过滤:是否官方:dockersearch--filter="is-offical=true...

你有空吗?跟我一起搭个服务器好不好?

来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。昨天闲的没事的时候,随手翻了翻写过的文章,发现一个很严重的问题。就是大多数时间我都在滔滔不绝的讲理论,却很少有涉及动手...

部署你自己的 SaaS_saas如何部署

部署你自己的VPNOpenVPN——功能齐全的开源VPN解决方案。(DigitalOcean教程)dockovpn.io—无状态OpenVPNdockerized服务器,不需要持久存储。...

Docker Compose_dockercompose安装

DockerCompose概述DockerCompose是一个用来定义和管理多容器应用的工具,通过一个docker-compose.yml文件,用YAML格式描述服务、网络、卷等内容,...

京东T7架构师推出的电子版SpringBoot,从构建小系统到架构大系统

前言:Java的各种开发框架发展了很多年,影响了一代又一代的程序员,现在无论是程序员,还是架构师,使用这些开发框架都面临着两方面的挑战。一方面是要快速开发出系统,这就要求使用的开发框架尽量简单,无论...

Kubernetes (k8s) 入门学习指南_k8s kubeproxy

Kubernetes(k8s)入门学习指南一、什么是Kubernetes?为什么需要它?Kubernetes(k8s)是一个开源的容器编排系统,用于自动化部署、扩展和管理容器化应用程序。它...

取消回复欢迎 发表评论: