python - 在Python中,如果小数点后没有有效数字,则获取整数;如果小数点后有有效数字,则获取浮点型

标签 python operators division median integer-division

我最近在 geeks for geeks 网站上提出了一个问题,他们要求两个排序数组的中位数,但是如果小数点后没有数字,他们要求答案为 int;如果小数点后有数字,则答案为 float。例如,当给出偶数数组的中位数时,我们通常将中间元素除以二,因此如果中间元素是 24 那么除法后的答案应该是 3 ,或者如果元素是 34,则答案应为 3.5。但是如果我们在 python 中使用 / 运算符,它将返回 24 的除法 3.0,并且如果我们使用 // 运算符,它将返回 34 的除法作为 3 而不是 3.5.有没有办法解决这个问题而不是检查是否能被 2 整除。

最佳答案

你可以尝试这样的事情。正常进行除法,然后应用以下内容:

if int(x) == x: # will be true if x=5.0 but not if x = 5.5
  x = int(x) 
  

关于python - 在Python中,如果小数点后没有有效数字,则获取整数;如果小数点后有有效数字,则获取浮点型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75046064/

相关文章:

python - 如何使用 pandas 来旋转它?

python - 当 request.POST 在 django 中包含查询字符串时的示例

python - 计算圆中线段的面积

fortran - 在 Fortran 中用整数除以 double

python - 关于OpenCV中reshape函数的困惑

javascript - 在 JavaScript 比较中应该使用哪个等号运算符(== vs ===)?

返回整数的 Python 运算符

c - 在 C 中,为什么包含逗号(,)运算符的表达式(语句)的工作方式不同

integer - 有符号 64 乘以 32 整数除法

Haskell - `div` 的奇怪截断行为