python - 对不同类型使用相同的功能
问题描述
我有以下功能:
def calculate_digits(number: Union[int, float, str]) -> int:
absolute_value: float = abs(number)
rounded_value: int = math.floor(absolute_value)
total_digits_needed: int = calculate_length_integer(rounded_value)
return total_digits_needed
如您所见,我想将其用于不同的 python 类型:int、float、str ... 由于 abs() 仅适用于浮点数我想知道,我该如何最好地处理这个?我是否需要使用 if、elsif 语句编写一个函数来执行此操作,还是有更好的方法来执行此操作?
解决方案
对我来说 abs() 也适用于 int ......我使用的是 python 3.9。
例如,下面的代码至少对我有用:
number = abs(3)
检查是否需要更新
推荐阅读
- r - 如何通过 caret kernlab 包提取高斯过程回归的预测区间?
- sublimetext3 - control+/ 不能在 sublime 3 中注释多行
- r - R查看器不平衡且缓慢
- next.js - Next.js Amplify Serverless AppSync graphql(放大错误)
- plotly - 如何在破折号中提供动画情节表达图?
- ubuntu-18.04 - 每次发生 Oracle JDK 11 错误,我在终端中安装任何东西
- javascript - 如何仅选择一个附加元素的输入值
- maven - Maven 为 Sonatype Nexus 存储库构建部署目标抛出异常
- java - 无法解析:无法从 TemporalAccessor 获取 OffsetDateTime:
- javascript - 在 JavaScript 中链接 Array.find()