百科问答小站 logo
百科问答小站 font logo



为什么python整数除法运算得浮点数? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

整数 不等于 整型。

你的问题应该是,两个整型相除为什么得到浮点型……

如果一定要说就是规定如此。

事实上数值运算的时候类型发生变化是非常正常的事情……

例如在C语言里面,整型与浮点型计算得到浮点型。

你说俩类型相同的加减不会得到其他类型?


C#里面俩short做各种运算会得到int的结果。

这没什么值得大惊小怪的……

DateTime相减还会得到TimeSpan呢……



事实上整型的除法才是不符合直觉的吧……

之所以要设计成那样,是因为整型需要用来做精确计算。

浮点数无法做精确计算,如果直接转换为浮点数计算除法,就会产生精度丢失。

当然有人会说直接向下取整岂不是丢的更多?

事实上这是错误的,因为丢失的部分精确的等于取余运算的结果,也就是说对于C语言而言:

a/b*b+a%b===a


user avatar   pansz 网友的相关建议: 
      

开局一张图,剩下全靠猜?这个没法评价。

从软件的角度虽然我能想出两三种导致这个现象的原因,但非正式发布的产品出现任何问题都是常见现象。盲人摸象的评价没有必要。

跟11代没差别,这个肯定是违背常识的,要知道11代i9只有16线程,12代i9有24线程,24线程超越16线程并不需要多么高超的优化技巧。

调度优化的主要难题是当我们只需要少量线程运作的时候究竟把这个线程安排在哪个核心。

然而,对于全核心全线程同时计算的场景来说,反正都是全核心上场,根本不需要什么优化,谁来都是全核心工作。

如果这个软件能把所有核心用满的话,没道理性能不变。所以肯定有某个环节出了问题。正式版本再说吧。




  

相关话题

  零基础学python拼命学最快要多久? 
  学 C# 的是不是被绑在 Windows 上? 
  该如何正确看待c中的字符串常量? 
  游戏开发的编程算不算是 IT 行业中难度最大的? 
  为什么好多人说大牛都玩Unix/Linux? 
  为什么著名的轮子很少有用 Lisp 写的? 
  在未来,编程会不会像现在的写字一样成为普通人的必备技能? 
  C++ 有哪些缺点? 
  编程书籍教程等有哪些常见的错误或者不准确的地方? 
  如何评价《鸟哥的Linux私房菜》说BSD和GPL很类似以及Windows不跨处理器架构等内容? 

前一个讨论
为什么C++里,封装类对象消亡时候,先执行封装类的析构函数,再执行成员对象的析构函数?
下一个讨论
和男友异地五年,请他在肯德基吃饭,他主动点餐结果都只有一人份,完全的单人套餐,我应该教他还是提分手?





© 2024-11-05 - tinynew.org. All Rights Reserved.
© 2024-11-05 - tinynew.org. 保留所有权利