如何在Python中将变量与值匹配

时间:2018-08-08 05:59:15

标签: python

我很想弄清楚如何在Python中实现以下目标。我有一个变量,里面有一个字符串

variable =“ Normal”或variable =“ Unknown”

我只想编写一个If语句,该语句将检查变量的值并基于该变量执行一些代码。

在Perl中,我只是写

if ( $variable =~ /Normal/ ) {
    dosomething()
} elsif ( $variable =~ /Unknown/ ) {
    dosomething()
} else {
    raiseerror()
}

如何在Python中实现相同的目标?

3 个答案:

答案 0 :(得分:1)

if variable == "Normal":
    #do something
elif variable == "Unknown":
    #do something else
else:
    #do another thing

答案 1 :(得分:1)

是否打算在dosomething()if中都使用相同的elsif?如果是这样,您可以摆脱以下限制:

if variable in ('Normal', 'Unknown'):
    dosomething()
else:
    raise Exception

否则,您实际上还需要将elsif转换为python:

if variable == "Normal":
    dosomething()
elif variable == "Unknown":
    dosomethingelse()
else:
    raise Exception

答案 2 :(得分:0)

您似乎在这里使用Perl正则表达式。因此,Python中的映射解决方案将是:

import re

if re.search("Normal", variable):
    do_something()
elif re.search("Unknown", variable):
    do_something()
else:
    raise Exception("Error")

在Python中,re模块中提供了正则表达式。 re.search的第一个参数就像您将在Perl中编写的正则表达式。