Python中没有切换功能 [英] Is there no switch function in Python
问题描述
我似乎无法在Python中找到switch语句。
我希望能够做到
切换(var)
案例1:
打印" var = 1"
案例2:
打印" ; var = 2"
但似乎我必须这样做。
if(var = 1)
print" var = 1"
elseif(var = 2)
print" var = 2"
是不是更容易?
I dont seem to be able to find the switch statement in Python.
I would like to be able to do
switch(var)
case 1 :
print "var = 1"
case 2:
print "var = 2"
But it seems that i have to do.
if(var=1)
print "var =1"
elseif(var=2)
print "var=2"
Is ther no easier way??
推荐答案
" Rudi Hansen" < RS ************** @ pobox.dk>写道:
"Rudi Hansen" <rs**************@pobox.dk> writes:
我希望能够做到
开关(var)
案例1:
print" var = 1
案例2:
打印var = 2"
但似乎我必须这样做。
if(var = 1 )
print" var = 1"
elseif(var = 2)
print" var = 2"
是不是更容易?
I would like to be able to do
switch(var)
case 1 :
print "var = 1"
case 2:
print "var = 2"
But it seems that i have to do.
if(var=1)
print "var =1"
elseif(var=2)
print "var=2"
Is ther no easier way??
一种方法是使用dicts:
swoosh = {1:" var = 1",2:" var = 2"}
print swoosh [var]
-
Marius Bernklev
one way is using dicts:
swoosh = {1: "var = 1", 2: "var = 2"}
print swoosh[var]
--
Marius Bernklev
Rudi Hansen< rs ************** @ pobox.dk>写道:
Rudi Hansen <rs**************@pobox.dk> wrote:
我似乎无法在Python中找到switch语句。
对,没有一个。
我希望能够做到
switch(var)<案例1:
打印" var = 1"
案例2:
打印var = 2
但似乎我必须do。
if(var = 1)
print" var = 1"
elseif(var = 2)
print" var = 2"
是不是更容易?
I dont seem to be able to find the switch statement in Python.
Right, there isn''t one.
I would like to be able to do
switch(var)
case 1 :
print "var = 1"
case 2:
print "var = 2"
But it seems that i have to do.
if(var=1)
print "var =1"
elseif(var=2)
print "var=2"
Is ther no easier way??
几个,从
开始
如果var in(1 ,2):打印''var =%s''%var
最恐怖的成语,当你必须做一些实质性的事情时
每个分支的开关,是一个可调用的词典 - 在这个玩具中
的情况下可能是:
switch = {1:lambda:sys.stdout。写(''var = 1 \ n''),
2:lambda:sys.stdout.write(''var = 2 \ n''),}
switch.get(var,lambda:'''')()
if / elif树也没问题,尽管t他的语法并不像你想象的那样......:
如果var == 1:
print''var is one''
elif var == 2:
print''var is two''
Alex
several, starting with
if var in (1,2): print ''var = %s'' % var
The most Pythonic idiom, when you have to do something substantial in
each branch of the switch, is a dictionary of callables -- in this toy
case it might be:
switch = {1: lambda: sys.stdout.write(''var=1\n''),
2: lambda: sys.stdout.write(''var=2\n''), }
switch.get(var, lambda: '''')()
An if/elif tree is also fine, though the syntax is not as you think...:
if var == 1:
print ''var is one''
elif var == 2:
print ''var is two''
Alex
在文章< CR ******************** @ news000.worldonline.dk> ;,
Rudi Hansen< rs * *************@pobox.dk>写道:
In article <CR********************@news000.worldonline.dk>,
Rudi Hansen <rs**************@pobox.dk> wrote:
我似乎无法在Python中找到switch语句。
我希望能够做到
切换( var)
case 1:
print" var = 1"
case 2:
print" var = 2"
5行,55个字符,包括打印报表。
但似乎我必须这样做。
> if(var = 1)
print" var = 1"
elseif(var = 2)
print" var = 2"
4行,52个字符(一次更正),包括打印
语句(如第一个例子中所述)。
是不是更容易?
I dont seem to be able to find the switch statement in Python.
I would like to be able to do
switch(var)
case 1 :
print "var = 1"
case 2:
print "var = 2"
5 lines, 55 characters including the print statements.
But it seems that i have to do.
if(var=1)
print "var =1"
elseif(var=2)
print "var=2"
4 lines, 52 characters (once corrected) including the print
statements (as written in the first example).
Is ther no easier way??
你希望它以什么方式更容易?
- -
\S - si *** @ chiark.greenend.org.uk - http://www.chaos.org.uk/~sion/
___ | 坦率地说,我对这种或那种企鹅没有任何感情
\ X / | --Arthur C. Clarke
她的努力是什么?ddre hl?heddes b?ce bump bump bump
In what way do you want it to be "easier"?
--
\S -- si***@chiark.greenend.org.uk -- http://www.chaos.org.uk/~sion/
___ | "Frankly I have no feelings towards penguins one way or the other"
\X/ | -- Arthur C. Clarke
her nu becomet se bera eadward ofdun hl?ddre heafdes b?ce bump bump bump
这篇关于Python中没有切换功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!