用户定义的函数在 Pycharm 中返回不正确的值但不是 IDLE

User defined function returning incorrect value in Pycharm but not IDLE

我对编程还很陌生,运行 遇到了一些我想不通的事情! 我有一个用户定义的函数,它应该计算一个百分比:

def test_score(num_correct, total):
    temp_value = num_correct / total
    return temp_value*100

a = 12
b = 20
print(test_score(a, b))

根据我的计算,程序应该返回值 60,当代码进入 IDLE 时它会返回值。但是,当输入 Pycharm 时,代码返回值 0.

关于为什么会这样有什么想法吗?

这可能是因为评论中指出的 Python 版本不同。

Python2:

12 / 20 -> 0  (default for integers)
12 * 1.0 / 20 -> 0.6  (if float is involved)

Python3:

12 / 20 -> 0.6  (default for integers)
12 // 20 -> 0  (floor division)

请参阅 division and floor division 上的文档。 在Pycharm中,您可以在settings -> project -> project interpreter下设置Python版本(或类似的,取决于版本和平台)。