[英]why do I get int?
我在 Mac 上工作,為什么我總是得到 integer,而不是分數?
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)
您的代碼有錯誤。 它應該是:
def dis(x1,y1,x2,y2):
k = ( (x2-x1)**2+(y2-y1)**2 )**(1/2)
print(k)
你必須在括號之間寫 1/2,或者你正在做 ((...)**1)/2
如果您使用的是 python2, /
是 integer 除法,如果兩個部分都是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)
(最后一個意義不大)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.