我正在制作一个简单的程序,将英制单位转换为公制单位。像kW到hp,mph到kph。我想让python检查多个关键字的第一个变量。这样,如果第一个关键字不在变量中,它将检查关键字的下一行
我尝试了列表并尝试了条件
def choice():
choice = raw_input("What do you want to convert?")
splitted = choice.split()
value = float(splitted[0])
if 'kw' or 'kW' in choice:
kwpk(value)
elif 'mph' in choice:
miletokm(value)
使用此方法,它总是返回kwpk(value)。即使输入中没有关键字。我有点need愧,我需要问这个问题,但是即使这是一个非常简单的应用程序,现在也困扰了我两天。
任何帮助将不胜感激:)
答案 0 :(得分:0)
您的条件中犯了一个很小的错误>当您添加两个由布尔运算符分隔的条件时,您将不得不分别提及它们。 代替:
if 'kw` or 'kW' in choice:
尝试:
if 'kw' in choice or 'kW' in choice:
更好的是,您可以避免这两种情况,而只需使用lower()
对字符串进行规范化即可。
def choice():
choice = raw_input("What do you want to convert?")
splitted = choice.split()
value = float(splitted[0])
if 'kw' in choice.lower():
kwpk(value)
elif 'mph' in choice:
miletokm(value)