admintest166 发表于 2020-4-13 20:57:48

return返回值的问题

今天学习flask session的时候 看见老师的写法从来没有见过 不知道其原理是什么样的

希望有知道的大佬帮解答一下

简单描述一下 代码如下

老师的代码是return username or '没有sesion'

在我的印象中return只能返回一个参数 好像没有判断机制

描述一下这段代码 意思是 我默认访问的是首页 访问首页就会设置一个session对象 (你可以理解为就是一个字典赋值)
get_session函数是获取session这个字典有没有一个名为username的值 如果有就打印 如果没有就显示没有设置session

现在我就是搞不懂 为什么return中可以 加个or 来进行判断

from flask import Flask,session
import os

app=Flask(__name__)
app.secret_key=os.urandom(24)


@app.route('/')
def index():
    session['username']='cht'
    return '你的seesion设置成功'

@app.route('/get_seesion')
def get_seesion():
    username=session.get('username')
    return username or'没有设置session'

if __name__ == '__main__':
    app.run()


zltzlt 发表于 2020-4-13 21:03:58

如果 username 不为空字符串,则返回 username

如果 username 为空字符串,则返回 '没有设置session'

永恒的蓝色梦想 发表于 2020-4-13 21:05:20

会先计算 return 后面的内容,再返回

admintest166 发表于 2020-4-13 21:09:36

zltzlt 发表于 2020-4-13 21:03
如果 username 不为空字符串,则返回 username

如果 username 为空字符串,则返回 '没有设置session'

OKOK 懂了
页: [1]
查看完整版本: return返回值的问题