我实现了一个功能:
def postback(i,user,tval): """functie ce posteaza raspunsul bazei de date;stringul din mesaj tb sa fie mai mic de 140 de caractere""" result = { 1:api.PostDirectMessage(user,'Trebuie sa-mi spui si marca pe care o cauti'), 2:postmarket(user,tval), 3:api.PostDirectMessage(user,'Imi pare rau, dar nu stiu unde poti gasi aceste tipuri de smantana: %s' % tval)} return result.get(i)
但它不能作为一个案例替代(从c++)它执行所有3个案例,无论我尝试…我是一个乞丐,所以可能有另一个错误,所以请帮助!p、 请不要告诉我如果…否则。。我知道这是唯一可行的选择
它执行所有三种情况,因为这样定义
result
dict!调用所有三个函数并将它们分配给键1、2、3。你知道吗你应该这样做:
在这里,我定义了一些小包装函数,并将它们存储在dict中。然后选择正确的函数并调用这个函数。你知道吗
编译dict时,将计算dict中的值表达式。如果你想让这些东西被执行,你可以把它们包起来。你知道吗
如果您必须使用dict,请使用函数dict:
lambda
关键字定义了一个匿名内联函数,它们只在最后一行被调用。你知道吗相关问题 更多 >
编程相关推荐