Python学习——数据可视化(自用)

Flask

pycharm社区版创建flask项目-CSDN博客

static用于存放css/js文件,用来提供网页相关素材

templates存放html文件,反馈用户想要的内容

模板

from flask import Flask,render_template,result

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello world!'


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

应用 

#路由解析,通过用户访问的路径(路径不能重复),匹配相应的函数
#通过访问路径,获取用户的字符串参数
@app.route1('/user/<name>')
def hello_world(name):
    return 'Hello,%s'%name        #Hello,输入的名字

#通过访问路径,获取用户的整型参数        还可float类型
@app.route2('/user/<int:id>')
def hello_world(id):
    return 'Hello,%d'%id+"号会员"    #Hello,2号会员

#返回给用户渲染后的网页文件
@app.route3('/')
def index():
    return render_template("index.html")
if __name__ == '__main__':
    app.run(debug=True)     #开启debug模式,修改后直接刷新网页即可,不需要重启,可查看错误位置

页面传递

@app.route('/')
def index():
    time = datetime.date.today()        #普通变量
    name = ["小张","小王","小赵"]     #列表类型
    task = {"任务":"打扫卫生","时间":"3小时"}     #字典
    return render_template("index.html",var = time,list = name,task = task)
<body>
    欢迎光临,今天是{{ var }}<br/>
    今天值班的有:<br/>
    {% for data in list %}        <!--用大括号和百分号括起来的是控制结构,还有if-->
<!--        {{ data }}-->
        <li> {{ data }} </li>
    {% endfor %}

    任务:<br/>        <!--了解如何在页面打印表格,及如何迭代-->
        <table border="1">
            {% for key,value in task.items() %}       <!--[(key,value),(key,value),(key,value)]-->
            <tr>
                <td>{{key}}</td>
                <td>{{value}}</td>
            </tr>
            {% endfor %}

        </table>
</body>

表单提交

#表单提交
@app.route('/test/register')
def register():
    return render_template("test/register.html")

#接收表单提交的路由,需要指定methods为post
@app.route('/result',methods=['POST','GET'])
def result():
    if request.method == 'POST':
        result = request.form
        return render_template("test/result.html",result = result)
<body>

<!--<form action="http://localhost:5000/result" method="post">-->
<form action="{{ url_for('result') }}" method="post">       <!--可直接获取动态路由-->
    <p>姓名:<input type="text" name="姓名"></p>
    <p>年龄:<input type="text" name="年龄"></p>
    <p>性别:<input type="text" name="性别"></p>
    <p>地址:<input type="text" name="地址"></p>
    <p><input type="submit" value="提交"></p>

</form>

</body>
<body>
    欢迎光临,今天是{{ var }}<br/>
    今天值班的有:<br/>
    {% for data in list %}        <!--用大括号和百分号括起来的是控制结构,还有if-->
<!--        {{ data }}-->
        <li> {{ data }} </li>
    {% endfor %}

    任务:<br/>        <!--了解如何在页面打印表格,及如何迭代-->
        <table border="1">
            {% for key,value in task.items() %}       <!--[(key,value),(key,value),(key,value)]-->
            <tr>
                <td>{{key}}</td>
                <td>{{value}}</td>
            </tr>
            {% endfor %}

        </table>
</body>

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值