我很想弄清楚如何在Python中实现以下目标。我有一个变量,里面有一个字符串
variable =“ Normal”或variable =“ Unknown”
我只想编写一个If语句,该语句将检查变量的值并基于该变量执行一些代码。
在Perl中,我只是写
if ( $variable =~ /Normal/ ) {
dosomething()
} elsif ( $variable =~ /Unknown/ ) {
dosomething()
} else {
raiseerror()
}
如何在Python中实现相同的目标?
答案 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中编写的正则表达式。