【发布时间】:2013-09-27 06:13:31
【问题描述】:
当我增加一个变量时,它只会增加到 2 而不是 3。默认值为 1。我不确定我缺少什么。任何帮助表示赞赏。
def unanswered(request, template ='unanswered.html'):
phone_number = Pool.objects.order_by('?')[0]
pool = Pool.objects.order_by('?')[0]
pool_list = Pool.objects.all()
number_attempts = Pool.objects.filter(phone_number=phone_number).count()
# unanswer number action
if pool_list:
if number_attempts > 3:
return number_attempts
else:
x = number_attempts
x += 1
print x 'returns 2'
store = Pool(id=phone_number.id,
phone_number = phone_number.phone_number,
un_answered=x, answered=0)
store.save()
payload = {'pool':pool,}
return render_to_response(template, payload, context_instance=RequestContext(request))
【问题讨论】:
-
从你的问题我猜不出
number_attempts在else块中的值是多少。如果是1,那么x +=1确实应该返回2。 :-) -
number_attempts,它计算它获得的确切 phone_number 的数量。所以默认它是1,然后我想保持递增直到它达到3。
标签: python django operators increment