gpt4 book ai didi

python - Python中C类型Switch语句实现的困惑

转载 作者:行者123 更新时间:2023-11-30 23:29:00 25 4
gpt4 key购买 nike

我正在尝试使用字典在Python中实现switch语句,但我遇到了一个问题。

以下是我正在尝试的:

print "Enter value of i"
i=eval(raw_input())

j=0
def switch(i):
print "Hello\n"
return {True: 'gauw',
i==1: a(10),
i==2: a(20),
}[True]
def a(t):
global j
j=t
switch(i)
print j

输出:

输入 i 的值

1

20

但我期望输出为 10。所以,这里的主要问题是,它正在执行 i==1i==2 的两个语句。另外,我不能在这里使用 break

那么如何获得想要的输出呢?

最佳答案

你会让自己变得复杂吗?如果只是switch的实现,就用if和elif。

def switch(i):
if i==1:
a(10)
elif i==2: #Even if here wil work, instead of elif
a(20)
else:
return 'gauw'()

会成功的

关于python - Python中C类型Switch语句实现的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21377153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com