`
喜欢蓝色的我
  • 浏览: 370178 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

python tornado框架学习

 
阅读更多

demo1:简单hello world

main.py

 

#!/usr/bin/env python
#-*-coding: utf-8-*-

# Version: 0.1
# Author: Song Huang <huangxiaohen2738@gmail.com>
# License: Copyright(c) 2015 Song.Huang
# Summary:

import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web

from tornado.options import define, options

define("port", default=8000, type=int)
#handler 类中的方法都是get、post、delete等
class IndexHandler(tornado.web.RequestHandler):
    def get(self):

        #get_argument 取函数方法
        res = self.get_argument('res', 'hello')

        #write 写到web页面上
        self.write(res + 'world!')


if __name__ == '__main__':

   #解析一个命令行
    tornado.options.parse_command_line()

    #路径匹配
    app = tornado.web.Application(
            handlers = [(r'/', IndexHandler)]
            )
   #  创建一个httpserver实例
    http_server = tornado.httpserver.HTTPServer(app)

    #监听端口
    http_server.listen(options.port)

    #启动项
    tornado.ioloop.IOLoop.instance().start()

-------------------------------------------------------------------------------------------------

url访问:

http://10.58.100.90:8000/

页面显示:hello world

http://10.58.100.90:8000/?res

页面显示:world!

--------------------------------------------------------

demo2:简单模板应用

 

main.py

 

#!/usr/bin/env python
#-*-coding: utf-8-*-

# Version: 0.1
# Author: Song Huang <huangxiaohen2738@gmail.com>
# License: Copyright(c) 2015 Song.Huang
# Summary:
import os.path

import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web

from tornado.options import define, options
define("port", default=8000, help="run on the given port", type=int)

class IndexHandler(tornado.web.RequestHandler):
    def get(self):

        #渲染模板render
        self.render('index.html')

class ContentHandler(tornado.web.RequestHandler):
    def post(self):
        n1 = self.get_argument('n1')
        n2 = self.get_argument('n2')
        n3 = self.get_argument('n3')
        n4 = self.get_argument('n4')
        self.render('content.html', n1=n1, n2=n2, n3=n3,n4=n4)


if __name__ == '__main__':
    tornado.options.parse_command_line()
    app = tornado.web.Application(
            handlers=[(r'/', IndexHandler), (r'/content', ContentHandler)],

            #模板路径
            template_path=os.path.join(os.path.dirname(__file__), "templates"),

            #静态文件路径 js、css
            static_path = os.path.join(os.path.dirname(__file__), "static")
            )

    http_server = tornado.httpserver.HTTPServer(app)
    http_server.listen(options.port)
    tornado.ioloop.IOLoop.instance().start()

templates文件夹下有另个文件 index.html content.html

index.html

<!DOCTYPE html>
<html>
    <head><title>Index</title></head>
    <body>

     //应用静态资源

      <href='static/1.css'>

       //快速加载静态资源

       <href='{{static_url("1.css")}}'>
       <form method="post" action="/content">
            <p>N1<br><input type="text" name="n1"></p>
            <p>N2<br><input type="text" name="n2"></p>
            <p>N3<br><input type="text" name="n3"></p>
            <p>N4<br><input type="text" name="n4"></p>
            <input type="submit">
        </form>
    </body>
</html>

 

content.html

 

<!DOCTYPE html>
<html>
    <head><title>Content</title></head>
    <body>
        <h1>n1: {{n1}}</h1>
        <h1>n2: {{n2}}</h1>
        <h1>n3: {{n3}}</h1>
        <h1>n4: {{n4}}</h1>
        {% if content %}
       
        {%end%}
        {%for i in content%}
       
        {%end%}
    </body>
</html>

----------------------------------------------------------------------------------

页面传参的方法{{}}和django类似

----------------------------------------------------------------------------------

demo3:

 

 

 

 

 

 

分享到:
评论

相关推荐

    毕业设计:基于Python Tornado框架的PaaS平台监控中心原型系统.zip

    通过研究这个项目,学习者可以深化对Python Web开发的理解,特别是异步编程和Tornado框架的使用。此外,还可以了解到如何在PaaS环境中实现监控功能,包括收集性能指标(如CPU使用率、内存占用、网络流量等),展示...

    毕业设计:基于python tornado 框架开发的果蔬采购配货系统.zip

    【毕业设计:基于Python Tornado框架开发的果蔬采购配货系统】 这个毕业设计项目的核心是构建一个使用Python的Tornado框架来实现的果蔬采购配货系统。Tornado是一个开源的Web服务器和网络库,以其非阻塞I/O模型和...

    linux下集中配置管理工具,使用python tornado框架,结合saltsatck开发自己的远程集中管理平台.zip

    本项目“linux下集中配置管理工具,使用python tornado框架,结合saltstack开发自己的远程集中管理平台”提供了一种解决方案。 盐堆栈(SaltStack)是一款强大的自动化运维工具,它允许用户通过简单的API接口远程...

    python tornado

    Tornado可以与Django、Flask等其他Python Web框架集成,实现优势互补,如在Flask的简单路由和模板系统之上叠加Tornado的异步能力。 通过这个项目实践,你不仅能提升Python编程技能,还能掌握异步网络编程的关键...

    python+tornado开发的实例源码

    2. **Tornado框架**:Tornado的核心特性包括异步非阻塞I/O模型,使得它能够在单个线程中处理大量并发连接。此外,Tornado提供了Web服务器、HTTP客户端、模板引擎、WebSocket支持、会话管理以及错误处理等功能。 3. ...

    python tornado实例

    本实例是针对初学者和有经验的开发者设计的,旨在帮助他们更好地理解和使用Tornado框架。Eclipse是一个流行的开源Java IDE,但通过PyDev插件,它也成为了Python开发的强大工具,提供代码补全、调试和项目管理等功能...

    毕业设计:基于python统一权限管理系统(基于python的tornado框架).zip

    【标题】基于Python统一权限管理系统(基于Python的Tornado框架)是计算机专业毕业生在完成学业时经常选择的一个项目,它涉及到Web开发、权限管理和后端编程等多个重要领域。Tornado是一个开源的Python Web服务器和...

    python的tornado框架的作业.zip

    通过学习Python的Tornado框架,你可以构建出高效、响应迅速的Web应用。在你的“Python学习笔记”中,可能会涉及到这些概念的实践和代码示例,例如如何设置路由、编写异步处理函数、使用WebSocket进行实时通信、模板...

    股票分析系统源码,基于python,tornado框架.zip

    综上所述,这个基于Python和Tornado框架的股票分析系统源码涉及了多种编程技术和金融分析方法,对于想要学习股票分析软件开发的人来说,这是一个很好的学习资源。开发者可以通过深入研究这个源码,了解如何构建一个...

    【Souvenir】Python 使用 Tornado 框架实现 WebHook 自动部署 Git-gohook.zip

    【标题】中的“Python 使用 Tornado 框架实现 WebHook 自动部署 Git-gohook”揭示了这个项目的核心内容,即使用 Python 编程语言,结合 Tornado Web 框架来创建一个 WebHook 服务,该服务能够自动响应 Git 仓库的...

    基于Python的Tornado框架实现简单Web应用测试源码

    该实验项目利用Python语言和Tornado框架,实现了对简单Web应用的测试。项目包含24个文件,包括5个Python字节码...项目旨在提供一个基础的Tornado框架Web应用测试环境,适用于学习和实践Tornado框架在Web开发中的应用。

    tornado python web框架

    Tornado是一个Python编写的开源Web框架和异步网络库,最初由FriendFeed公司开发。它支持非阻塞网络I/O,使得能够处理成千上万的开放连接,非常适合长轮询、WebSocket和其他需要长期与每个用户保持连接的应用。...

    【Souvenir】Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目。.zip

    通过学习和实践这个项目,开发者可以深入了解 Python 的 Tornado 框架,掌握 WebHook 的工作原理,以及如何利用它们来构建自动化部署系统,提升开发团队的工作效率。这不仅是一个很好的实战项目,也是提升个人技能和...

    MUI+Vue 的webapp, 后台基于python tornado 框架+源代码+文档说明

    2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。...

    基于Python Tornado框架的PaaS平台监控中心原型系统+源代码+文档说明

    2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。...

    Python的Tornado框架异步编程入门实例

    通过上述知识点的学习,我们可以了解到Tornado框架是构建在Python语言上,适用于创建高性能web服务的工具,它在设计理念上与传统的同步阻塞Web框架有所不同,更适合那些需要处理大量并发连接的应用程序。对于希望...

    tornado docs.pdf

    综合来看,Tornado官方文档是学习和使用Tornado框架的重要资源。通过阅读文档,开发者可以充分理解Tornado的设计哲学、核心概念和实现细节,进而能够利用Tornado开发出高效、可扩展的Web应用程序。

    Tornado框架课件资料.rar

    这个"**Tornado框架课件资料.rar**"压缩包包含了深入学习Tornado框架所需的重要资源,包括源码分析、文档资料和操作截图,旨在帮助用户全面理解和掌握Python Web开发以及与数据库的交互。 首先,**04源码.rar**可能...

Global site tag (gtag.js) - Google Analytics