8

我正在使用以下代码:

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

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

谢谢。

4

2 回答 2

17

如果session其中有一个带有值的键,"name"则返回与该键关联的值(很可能是False),否则(如果没有名为“name”的键)它返回False

session是一个类似字典的类型,因此获取该get方法的文档的最佳位置是标准库的 Python 文档。简而言之,它get是以下内容的简写:

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

if result:
    # Do something
于 2012-08-28T19:41:33.103 回答
0

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

于 2020-09-04T06:45:44.623 回答