django request.session.get(“name”,False) - 这段代码是什么意思?

时间:2012-08-28 19:40:20

标签: python django

我使用以下代码:

if request.session.get("name",False):

任何人都可以告诉我上面的代码是做什么的吗?我假设,如果会话中有“name”,则返回True,否则返回False。我对我的代码感到困惑所以我在这里发布了这个问题。

感谢。

2 个答案:

答案 0 :(得分:14)

如果session的密钥值为"name",则会返回与该密钥相关联的值(可能是False),否则(如果没有名为“name”的键),则返回False

session是类似字典的类型,因此在get method上获取文档的最佳位置是在标准库的Python文档中。缺点是get是以下的简写:

if "name" in request.session:
    result = request.session["name"]
else:
    result = False

if result:
    # Do something

答案 1 :(得分:0)

根据Django docs,get方法的第二个参数是默认参数。因此,如果会话中存在“ request.session.get(“ name”,False):“语句,则返回'name'项目的值,如果不存在,则返回默认值False。