python+mysql实现简单的web程序

 更新时间:2014年09月11日 09:39:59   投稿:hebedich  
上篇文章我们介绍了简单的Python web程序,实现hello world,本文我们来结合一下mysql,实现对数据库的简单操作,希望对大家有所帮助

这次要为我的python程序加上数据库,主要是实现从mysql中查询出数据并在页面上显示出来。

首先是mysql的配置文件config.py

host="127.0.0.1"
user="root"
password=""
charset="utf8"
database="service"
port=3306

然后是从数据库中读取数据的aService.py

import MySQLdb
import sys
import config
class AService(object):
    def getA(self,id):
      conn = MySQLdb.connect(host=config.host,user=config.user,passwd=config.password,port=config.port,db=config.database,charset=config.charset)
      result=[]
      try:
        cursor = conn.cursor();
        cursor.execute("select id,code,title from test_a where id='%d'"%(id))
        result = cursor.fetchone()
      except Exception,e:
        print "System error: ",e
        result = "error"
      finally:
        cursor.close()
        conn.close()
      return result

其中cursor.execute()返回是执行语句影响的行数,刚开始我以为是返回的结果,导致绕了很远的弯路。真正为返回结果的是cursor.fechone(),表示获取执行结果的第一条。同时还有cursor.fetchall(),表示获取所有结果。如果获取了多个字段的话,结果为数组类型,按照查询结果的字段顺序排序。

MySQLdb是python与数据库连接的一个模块。这个模块并不是本来就存在的,需要下载并安装到python得目录下才行。MAC安装这个模块有个奇怪的要求,就是必须在本机安装了mysql,即便实际上程序使用的外部的数据库。在已安装mysql的前提下,发现安装mysqldb错误,并报了mysql目录找不到错误时,可用以下方法解决:

在用户的home目录下vi .profile

加入 export PATH=$PATH:/user/local/mysql/bin,退出并保存

再执行source ./.profile命令并退出终端

这样过后,在重新安装mysqldb应该就不会报找不到mysql目录的错误了。

接下来是主程序hello.py

import web
import aService
import sys
 
urls = ("/Service/A","hello")
app = web.application(urls,globals())
 
class hello:
    def GET(self):
        mservice = aService.AService()
        result = mservice.getA(1)
        json = ""
        json +="{"
        json +="'id':"+str(result[0])+","
        json +="'code':'"+result[1]+"',"
        json +="'title':'"+result[2]+"'"
        json +="}"
        return json;
if __name__=="__main__":
    app.run()

这个部分创建了一个访问路径/Service/A,该路径对应的服务是hello类提供的。在这个类的get方法中调用了aService的getA方法。在页面上显示出一个json格式的文本。执行步骤如下

终端:python hello.py 8080

浏览器:localhost:8080/Service/A

相关文章

  • Python3.7安装pyaudio教程解析

    Python3.7安装pyaudio教程解析

    这篇文章主要介绍了Python3.7安装pyaudio教程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Python astype(np.float)函数使用方法解析

    Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Python基于回溯法子集树模板解决全排列问题示例

    Python基于回溯法子集树模板解决全排列问题示例

    这篇文章主要介绍了Python基于回溯法子集树模板解决全排列问题,简单描述了全排列问题并结合实例形式分析了Python使用回溯法子集树模板解决全排列问题的具体步骤与相关操作注意事项,需要的朋友可以参考下
    2017-09-09
  • 基于Python实现格斗小游戏的示例代码

    基于Python实现格斗小游戏的示例代码

    格斗游戏,曾经是街机厅里最火爆的游戏之一,甚至可以把“之一”去掉,那个年代的格斗游戏就是街机游戏的王。本文就来用Python实现一个简单的格斗游戏,感兴趣的可以了解一下
    2023-03-03
  • python连接FTP服务器的实现方法

    python连接FTP服务器的实现方法

    本文主要介绍了python连接FTP服务器的实现方法,主要使用ftp操作进行连接FTP服务器、获取当前目录文件清单、上传文件等操作,具有一定的参考价值,感兴趣的可以了解一下
    2022-06-06
  • Python使用pyinstaller实现学生管理系统流程

    Python使用pyinstaller实现学生管理系统流程

    pyinstaller是一个非常简单的打包python的py文件的库,下面这篇文章主要给大家介绍了关于Python Pyinstaller库安装步骤以及使用方法的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • Python实现GUI学生管理系统的示例代码

    Python实现GUI学生管理系统的示例代码

    这篇文章主要为大家介绍了如何留Python语言实现简易的GUI学生管理系统,文中的示例代码讲解详细,对我们学习Python有一定帮助,需要的可以参考下
    2022-06-06
  • 使用Tensorflow将自己的数据分割成batch训练实例

    使用Tensorflow将自己的数据分割成batch训练实例

    今天小编就为大家分享一篇使用Tensorflow将自己的数据分割成batch训练实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python分治法定义与应用实例详解

    Python分治法定义与应用实例详解

    这篇文章主要介绍了Python分治法定义与应用,较为详细的分析了Python分治法的概念、原理、用途,并结合实例总结了Python分治法的各种常见应用,需要的朋友可以参考下
    2017-07-07
  • Python 转换时间戳为指定格式日期

    Python 转换时间戳为指定格式日期

    这篇文章主要为大家介绍了Python转换时间戳,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12

最新评论