Python 主线任务之整数和浮点数,今日buff叠加【玩转Python】

主线任务

主线任务之数据类型已进行33.3%,今日主线任务为“整数和浮点数”的了解和掌握,这两个一般是“共生”关系。了解其中一个,必然不能落下另外一个,两者兼顾方为最佳。

除了上面的主线任务之外,今日还需兼顾支线任务:了解特殊处理的点点滴滴。方可达到"学以致用"的效果。

接下来让我们一起开启今日份的Python的主线任务。

整数和浮点数

简介

Python将所有带小数点的数称为浮点数。

float_1 = 0.1+0.1
print(float_1)
>>> 0.2

python2中分为整数、长整数,python3中统称为整数。

# 十进制
int_1 = 10
print(int_1)
>>> 10# 八进制
int_o = 0o10
print(int_o)
>>> 8# 十六进制
int_x = 0x10
print(int_x)
>>> 16

笔记

浮点数小数位数的不确定性

浮点数进行算数运算时,结果出现以下情况:

float_2 = 0.2+0.1
print(float_2)
>>> 0.30000000000000004

后面再介绍怎么处理多余的小数位的方式。

前端也存在这个问题,所以我并不陌生。

任意两个数运算结果总是浮点数

将任意两个数相除时,结果总是浮点数,即便这两个数都是整数且能整除

int_1 = 10
int_2 = 5
print(int_1/int_2)
>>> 2.0

无论是哪种运算,只要有操作数是浮点数,Python 默认得到的总是浮点数,即便结果原本为整数也是如此。

int_2 = 5
float_1 = 2.0
print(int_2*float_1)
>>> 10.0

数中的下划线

Python使用了一种称为"长整数"的技术来处理大整数。长整数是一种特殊的数据类型,它可以存储任意大小的整数,并且可以进行高效的运算。

遇到大整数时,可使用下划线将其中的数字分组,使其更清晰易读:

int_long = 123_400_500_600
print(int_long)
>>> 123400500600

注:

1、这种表示方式,需要Python 3.6和更高的版本支持。

2、Python 的大整数运算是十分高效的,可以用于处理密码学、数论、计算机代数和其他需要处理大整数的领域。

"约定俗成"的全大写常量表示方式

还有一类数据类似变量,但其值在程序的整个生命周期内保持不变,称之为变量。

Python 没有内置的常量类型,但一般"约定俗成"的用全大写来指定某个变量为常量,其值应始终不变:

MAX_CONTANT = 12345

练一练

练习2-8:数字8

编写四个表达式,分别使用加法、减法、乘法和除法运算,但结果都是整数8。

print(4+4)
>>> 8
print(2*4)
>>> 8
print(int(32/4))
>>> 8
print(12-4)
>>> 8

我将题目稍作了变化,改成了"整数8",对于前面提到的两数相除会得到浮点数,所以这里用了int方法,保证得到整数。

总结

读完本文的主要收获有:

1、对于整数和浮点数,学习了如何使用整数和浮点数、一些使用数值数据的方式。

对于主线任务,主要是学习基础,此外加上了支线的练习任务,可以将一些容易被忽视的功能点和对比,产生关联的联系,更容易加深记忆。

彩蛋

今日彩蛋分享:算术运算符。

算术运算符

介绍

Python 中的算数运算符主要包括 + (加)、-(减)、*(乘)、/(除)、%(求模)、**(幂)、//(取整除)。

笔记

判断奇偶数

求模运算符可以得到两个数相除的余数,如果某个数和2执行求模运算的结果是0,那么这个数就是偶数,否则是奇数。

def getOddOrEven(num):if num % 2 == 0:print(f'{num}是偶数')else:print(f'{num}是奇数')
getOddOrEven(0)
>>> 0是偶数getOddOrEven(3)
>>> 3是奇数getOddOrEven(6)
>>> 6是偶数
向下取整

// 运算符可以返回商的整数部分,即向下取整。

// 运算结果整数与否,与参与运算的两个数值的类型有关:

  • 小数参与运算时,结果会是小数;
  • 参与运算的都是整数,则结果就是整数。

向下取整的常用场景为,得到的结果不能包含小数,比如就某个物品的极限数量。

def getShipNumMax(ship_capacity,good_size):num = ship_capacity // good_sizeprint(f'容载量为{ship_capacity}的货船,最最多可容纳{good_size}重的货物{num}个')
getShipNumMax(80,3)
>>> 容载量为80的货船,最最多可容纳3重的货物26个

作者介绍
非职业「传道授业解惑」的开发者叶一一。
《趣学前端》、《CSS畅想》等系列作者。华夏美食、国漫、古风重度爱好者,刑侦、无限流小说初级玩家。
如果看完文章有所收获,欢迎点赞👍 | 收藏⭐️ | 留言📝。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/723243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Doris——纵腾集团流批一体数仓架构

目录 前言 一、早期架构 二、架构选型 三、新数据架构 3.1 数据中台 3.2 数仓建模 3.3 数据导入 四、实践经验 4.1 准备阶段 4.2 验证阶段 4.3 压测阶段 4.4 上线阶段 4.5 宣导阶段 4.6 运行阶段 4.6.1 Tablet规范问题 4.6.2 集群读写优化 五、总结收益 六…

【复习】C++11特性

1. 智能指针 作用:堆内存指针+引用计数(控制器,由默认的释放规则,可以自定义),用于堆内存管理,当对象离开生命周期时,引用计数降至为0,释放堆内存。 智能指针由3类std::shared_ptr, std::unique_ptr, std::weak_ptrstd::shared_ptr初始化std::shared_ptr pShared1; s…

【Vue】VueX仓库

📝个人主页:五敷有你 🔥系列专栏:Vue ⛺️稳中求进,晒太阳 目录 Vue概述 是什么 场景: 优势 构建多组件共享环境 创建一个空仓库 核心概念 - state 状态 1. 提供数据 2.使用数据 ​编辑 …

Linux系统运维脚本:批量创建linux用户和密码(读取文件中的账号和密码来批量创建用户)

目 录 一、要求 二、解决方案 (一)解决思路 (二)方案 三、脚本程序实现 (一)脚本代码和解释 1、脚本代码 2、代码解释 (二)脚本验证 1、脚本编辑 2、给予执行权…

结合大象机器人六轴协作机械臂myCobot 280 ,解决特定的自动化任务和挑战!(上)

项目简介 本项目致力于探索和实现一种高度集成的机器人系统,旨在通过结合现代机器人操作系统(ROS)和先进的硬件组件,解决特定的自动化任务和挑战。一部分是基于Jetson Orin主板的LIMO PPRO SLAM雷达小车,它具备自主导航…

ELF 1技术贴|在NXP源码基础上适配开发板的按键功能

本次源代码适配是在NXP i.MX6ULL EVK评估板的Linux内核源代码(特定版本号为Linux-imx_4.1.15)的基础中展开的。 首要任务集中在对功能接口引脚配置的精细调整,确保其能无缝匹配至ELF 1开发板。接下来,我们将详细阐述适配过程中关…

MapReduce内存参数自动推断

MapReduce内存参数自动推断。在Hadoop 2.0中,为MapReduce作业设置内存参数非常繁琐,涉及到两个参数:mapreduce.{map,reduce}.memory.mb和mapreduce.{map,reduce}.java.opts,一旦设置不合理,则会使得内存资源浪费严重&a…

KingbaseES-V8R3下载安装及基础配置以及创建用户数据库

KingbaseES-V8-R3安装 1 下载准备安装包 下载地址:https://gitlab.cn/renfei/KingbaseES-V8-R3 准备好安装包及license.dat文件上传至服务器 2 挂载安装包 安装包为iso文件,需要挂载到目录 mount KingbaseES_V008R003C002B0340_Lin64_install.iso /…

Oracle中使用alter table move命令的方法降低表中的高水位(High Water Mark)

Oracle中使用alter table move命令的方法降低表中的高水位(High Water Mark) 导读 在Oracle数据库中,“高水位”(High Water Mark)是指表中数据的存储位置已经达到的最高位置。在表中插入、更新或删除数据时&#xff0…

裸机程序--时间片调度

1.为什么自己写一个时间片调度呢 a. 网上其实有很多成熟的时间片调度例程, 包括我最开始参加工作也是抄的网上的例程(还记得当时领导问我看明白了它的调度原理吗, 作为一个自学刚参加工作的我来说, 看懂别人的意思真的很难, 当时只能含糊其词的说看得差不多) b. 在我看来网上的…

Day 6.有名信号量(信号灯)、网络的相关概念和发端

有名信号量 1.创建: semget int semget(key_t key, int nsems, int semflg); 功能:创建一组信号量 参数:key:IPC对像的名字 nsems:信号量的数量 semflg:IPC_CREAT 返回值:成功返回信号量ID…

Java 中进行数据类型的强制转换

在Java中,数据类型的强制转换是指将一个数据类型的值转换为另一种数据类型的操作。这在编程中经常会用到,特别是在需要将不同类型的数据进行计算或者比较时。Java中的数据类型强制转换分为两种:隐式转换和显式转换。 1、隐式转换&#xff08…

5G智能制造热力工厂数字孪生可视化平台,推进热力行业数字化转型

5G智能制造热力工厂数字孪生可视化平台,推进热力行业数字化转型。在当今这个信息化、数字化的时代,热力生产行业也迎来了转型的关键时刻。为了提升生产效率、降低成本、提高产品质量,越来越多的热力生产企业开始探索数字化转型之路。而5G智能…

Linux-网络相关函数接口-012

1.UDP编程 socket套接字编程 1.1【socket】 1.1.1函数原型 【int socket(int domain, int type, int protocol);】 1.1.2函数功能 创建一个用来通信的文件描述符1.1.3函数参数 【domain】:使用的协议族 AF_INET (IPv4协议族) 【type】:套接字类型【…

SAP 工单CO02删除标记设置增强

需求:工单打上删除标记时检查,满足才能打上删除标记 位置:PPCO0002 -> EXIT_SAPLCORO_001 -》INCLUDE ZXCO1U02.中 如果没有,就新建 然后写下代码测试: MESSAGE test TYPE I. 然后就可以写下自己要的检查了&…

three.js如何实现简易3D机房?(一)基础准备-下

接上一篇&#xff1a; three.js如何实现简易3D机房&#xff1f;&#xff08;一&#xff09;基础准备-上&#xff1a;http://t.csdnimg.cn/MCrFZ 目录 四、按需引入 五、导入模型 四、按需引入 index.vue文件中 <template><div class"three-area">&l…

基于springboot+vue实现会议室预约系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现会议室预约系统演示 摘要 一个企业的发展离不开相关的规定流程。信息化到来的今天在我们的生活当中。离不开各种信息化的支持。比如钉钉会议预约、美团买菜、扫码签到等各种信息化软件。他们涉及我们生活中的方方面面给我们的生活提供了更大的便利性。大到政…

将nodejs项目打包为exe方便在没有Node的环境中部署

nodejs21之前可以使用pkg&#xff0c;21版本之后支持单个可执行应用程序 https://github.com/vercel/pkg?tabreadme-ov-file https://nodejs.org/api/single-executable-applications.html 这样能解决服务器上没有exe的问题了 Windows中使用WinSW工具进行服务的安装

css网格布局简单介绍

前端网格布局是一种用于在网页上创建复杂网格系统的布局技术。它允许开发者通过简单的语法来定义和控制元素的排列方式&#xff0c;使得页面布局更加灵活和可预测。在CSS中&#xff0c;网格布局可以通过display: grid属性来实现。 特点 1. **灵活性**&#xff1a;网格布…

python基础使用之“__name__==‘__main__‘”作用

if __name__ "__main__": 是一个常见的 Python 编程习惯&#xff0c;其作用是在一个 Python 模块被直接运行时执行一些特定的代码&#xff0c;而不是被导入到其他模块中。这个条件语句检查模块的 __name__ 属性是否等于 "__main__"。 当一个 Python 模块…