python-def-else语句不工作
好的,我对这个很陌生,写了一个从英里到公里的简单单位转换程序,但是我的python-def-else语句不工作,python,if-statement,function,Python,If Statement,Function,好的,我对这个很陌生,写了一个从英里到公里的简单单位转换程序,但是我的else语句似乎不起作用 下面是我写的: def kmtoMil(dist): return (dist / 0.62137) def miltoKm(dist): return (dist * 0.62137) def convert(dist, toScale): if toScale.lower() == "K": return miltoKm(dist) else:
else
语句似乎不起作用
下面是我写的:
def kmtoMil(dist):
return (dist / 0.62137)
def miltoKm(dist):
return (dist * 0.62137)
def convert(dist, toScale):
if toScale.lower() == "K":
return miltoKm(dist)
else:
return kmtoMil(dist)
print ("Enter a distance: ")
dist = int(input())
print ("Choose unit to convert to: ")
scale = input()
convertDist = convert(dist, scale)
print (dist, convertDist, scale)
它似乎应用了第一个def(我可以在第9行和第11行交换kmtoMil和miltoKm,第9行似乎采用),但没有第二个def。我希望这是有道理的
我认为else:
语句有问题……但不确定,也不好奇
提前谢谢 你有个臭虫哥们。。。这很简单
if toScale.lower() == "K":
SHOULD BE
if toScale.lower() == "k":
但是试试这个:
if toScale in ["K", "k"]:
你有个臭虫哥们。。。这很简单
if toScale.lower() == "K":
SHOULD BE
if toScale.lower() == "k":
但是试试这个:
if toScale in ["K", "k"]:
将toScale.lower()。因此,考虑使用<代码>如果toSCAL.LUVER()=“k”:或<代码>如果toCale.UpServer(=)“k”:./P>> p>您使用的是>LUVER()/<代码>,但与大写字符比较。因此,考虑使用<代码>如果toSCALE.LUVER()=“k”:“toCale.UpFor”=“k”:<代码> toSCALE。并将其与大写字母K进行比较。这永远是错误的。