为什么此变量会自动舍入?

时间:2018-10-10 13:06:35

标签: python rounding

#Y=mx+b
x1, y1 = input("X1,Y1: ").split(",")
x2, y2 = input("X2,Y2: ").split(",")
print("\n")

Xdif = (int(x1) - int(x2))
Ydif = (int(y1) - int(y2))

Yslope = (int(Ydif) * int(x1))

if(Xdif == 0):
  print("Slope is Undefined")
else:
  Slope = (int(Yslope) / int(Xdif))
  if(int((Slope*10) % 10) == 0):
    SlopeN, bad = str(Slope).split(".")
    print("Slope:",SlopeN)
  else:
    print("Slope:",Slope)
    Why = (int(y1) - int(Slope))
    print(Why)

我是堆栈溢出的新手,但是已经使用python大约两个月了。我比较有经验,但是不知道为什么在打印变量“为什么”时会自动取整。我正在创建一个脚本,以从图形上的两点找到斜率截距形式。任何帮助表示赞赏。 -诺亚

编辑更改了变量名称

1 个答案:

答案 0 :(得分:0)

int(n)将返回一个整数。如果n为浮点数,则会被截断。

两个整数之间的差(令人惊讶地...)是一个整数,因此,最终结果是截断的整数。

考虑使用float(n)而不是int(n)。