python - 为什么我会得到 int?
问题描述
我在 Mac 上工作,为什么我总是得到整数,而不是分数?
def dis(x1,y1,x2,y2):
k = ( (x2-x1)**2+(y2-y1)**2 )**1/2
print(k)
x1 = int(input())
y1 = int(input())
x2 = int(input())
y2 = int(input())
dis(x1,y1,x2,y2)
解决方案
如果您使用的是 python2,/
如果两个部分都是int
s,则为整数除法。
你想要要么
def dis(x1,y1,x2,y2):
k = ( (x2-x1)**2+(y2-y1)**2 )**0.5 # you can also do (1/2.0)
print(k)
或者
def dis(x1,y1,x2,y2):
k = ( (x2-x1)**2+(y2-y1)**2 )**1/2.0
print(k)
(最后一个意义不大)
推荐阅读
- xml - 从字符串(不是文件)获取 XML
- android - 底部工作表布局中存在的 NestedScrollview 中的 BottomSheet 片段滚动行为问题
- reactjs - 使用 reactjs 和 material-ui 更改步进器的活动步进颜色
- python - 从 ARIMA 模型重新调整预测
- java - 什么可以改变Java生成的XML文件中元素属性的顺序?
- reactjs - 我想在我的反应原生应用程序中的图像上添加标题,例如 whatsapp
- node.js - 无法在任何 docker 容器中使用 npm
- angular - ERROR 错误:无法读取未定义的属性“长度”
- php - 压缩和缩小 PHP 缓存页面
- java - Spring Boot + docker-compose + MySQL:连接被拒绝