如何让函数检查多件事情

时间:2019-05-30 03:06:51

标签: python-2.7

我正在制作一个简单的程序,将英制单位转换为公制单位。像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愧,我需要问这个问题,但是即使这是一个非常简单的应用程序,现在也困扰了我两天。

任何帮助将不胜感激:)

1 个答案:

答案 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)