我只是在和一些代码战斗,需要你的帮助!你知道吗
目标:
下面是尚未运行的代码-->;根据值NBINS,它应该选择某个函数或直接进行计算(例如lambda x: x==nbins: bucket-=1
)
def caseSwitcherCheckBucket(bucket):
choose = {
lambda x: x==nbins: maxBucket,
lambda x: x<nbins: defaultBucket,
}
func = choose.get(bucket)
return func()
def defaultBucket(bucket):
print 'defaultBucket():', bucket
return bucket
def maxBucket(bucket):
bucket-=1
print 'maxBucket():', bucket
return bucket
我在这里找到了一个例子:Python dictionary instead of switch/case,我想按照戴夫·韦伯的建议去做。这是他的密码:
values = {
lambda x: x < 4: foo,
lambda x: x > 4: bar
}
不幸的是,在这种情况下它不起作用!我该怎么解决这个问题?
+
通常我使用这种“案例切换程序”-->这里是一个例子!你知道吗
def caseSwitcherCheckLogStatus(check_log_status):
choose = {
True: entLog,
False: doNothing,
}
func = choose.get(check_log_status)
return func()
def entLog():
data[i,[0,1,2]] = 10**(data[i,[0,1,2]])
def doNothing():
pass
+
如果您知道我如何改进我的“案例转换器”,我也很高兴得到一些建议。
可以这样实现:
可用作
相关问题 更多 >
编程相关推荐