python 返回值的有关问题

python 返回值的问题
如下代码:
li=['banana','orange','pear']
dic={
    'banana': 5,
    'orange': 2,
    'pear': 3
}
def compute(food):
    total=0
    for x in food:
        total=total+dic[x]
        #return total
    print total
compute(li)
为什么我将return语句前#去掉函数的结果就是0,我想要的是10
------解决思路----------------------
return后的语句不会执行了,return不放在循环里
def compute(food):
    total=0
    for x in food:
        total=total+dic[x]
    return total
    #print total
print compute(li)