> =运算符在此return语句中是什么意思?

时间:2020-04-18 19:30:07

标签: python django django-models django-views

我知道大于等于算符是什么?我问这是什么意思?> = 运算符在最后一行是什么意思?我确定这不是 lambda函数该return语句的含义是什么?

import datetime

from django.db import models
from django.utils import timezone


class Question(models.Model):
    # ...
    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)

它位于 Django文档中的https://docs.djangoproject.com/en/3.0/intro/tutorial02/的“使用API​​”部分下。

2 个答案:

答案 0 :(得分:1)

它的意思是“大于或等于”。

https://docs.python.org/3/reference/expressions.html#comparisons

我们正在将pub_date与昨天进行比较。

答案 1 :(得分:1)

>=表示大于或等于。

在此代码中

class Question(models.Model):
    # ...
    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)

首先,从当前时间中减去一天,然后将self.pub_date与该时间进行比较。如果pub_date在当前时间的一天之内,则返回true。否则,该函数将返回false。

根据操作顺序,这将是等效的:

return self.pub_date >= (timezone.now() - datetime.timedelta(days=1))