执行除法,但保持数据类型不变

时间:2019-03-25 14:59:53

标签: python-3.x

我有以下代码:

if target % 3 == 0:
    counter = Counter(nums)
    logging.debug(f"counter: {counter}")
    dup = target/3
    if counter[dup] >= 3:
        triplets.append([dup]*3)

产生

 [[1.0, 1.0, 1.0]]

然后我必须将其转换回整数

  int(target/3)

对于divider的自动行为,我应该非常小心,
如何执行除法运算但不更改数据类型?

1 个答案:

答案 0 :(得分:0)

如果要保留初始变量的类型,可以检查该类型是什么,并对每个变量执行不同的计算。

def divideNumber(myNum):
    if isinstance(myNum,int):
        return myNum // 3
    elif isinstance(myNum,float):
        return myNum/3