这种包含Django对象的dict理解有什么问题(SyntaxError:无效语法)?

2024-04-24 05:28:11 发布

您现在位置:Python中文网/ 问答频道 /正文

这是来自Django的:

def get_temp_data(nid = None,qid = None,data = None):
    from core_apps.models import Temps
    temp_data = Temps.objects.all()
    if nid != None:
        temp_data = temp_data.filter(nid=nid)
    if qid != None:
        temp_data = temp_data.filter(qid=qid)
    if data != None:
        temp_data = temp_data.filter(data__gte=data)
    temp_data.order_by('id_field')
    return temp_data

以下是包含上述函数中的或映射器对象的dict理解:

record_for_nid = {obj.qid: obj.data for obj in get_temp_data(nid, None, None) if obj.data != 0.0}

record_for_nid在常规情况下运行得非常好,但在crontab上却没有。有一点怀疑是,崇高的文本错误检查器拿起了一个错误的“为”在这个列表中。代码怎么了?如何修复?你知道吗


Tags: djangononeobjfordatagetifdef