2013-10-05 23:04:33|

 
1. web.py 使用 db.select 返回的数据只能遍历一次
import web
db = web.database(dbn='mysql', db='test', user='root', pw='123456')
results = db.query("SELECT *  FROM user  where username='lily'")
print type(results)
print "results[0][2]:",results[0].password
print type(results[0].password)
for r in results:
    print r

报错:
Traceback (most recent call last):
  File "test.py", line 8, in <module>
    print type(results[0].password)
  File "/usr/local/lib/python2.7/dist-packages/web/utils.py", line 536, in __getitem__
    raise IndexError, "already passed "+str(i)
IndexError: already passed 0

解决:
参考资料:http://segmentfault.com/q/1010000000095518
Python 中的迭代器本来就是一次性的,无论是生成器表达式还是 yield 都是这样。如果你需要多次使用,应该先用 list 工厂函数将迭代器转换成列表。当然,转换之后迭代器就空了,但是数据保存到了列表中。

最新文章

  1. checkbox样式更改用户权限操作(MVC)
  2. POJ2396 Budget
  3. 使用kvm虚拟出Centos6.5系统相关步骤
  4. linux shell 脚本获取和替换文件中特定内容
  5. GROUP BY 與 Null 值
  6. 20145224&amp;20145238 《信息安全系统设计基础》 第一次实验
  7. Mysql编码, Mysql编码流程, Mysql编码顺序, Mysql编码原理, Mysql编码修改依据
  8. css清除浮动的处理方法
  9. PostgreSQL and bloat
  10. SAP存货账龄分析之库存获取
  11. iOS多线程编程之GCD的使用
  12. 使用VS2003 发送Email
  13. EasyUI - Progressbar 进度条控件
  14. 相机标定 matlab opencv ROS三种方法标定步骤(1)
  15. Python 中列表生成式和生成器
  16. MinerConstanits.java 常量类
  17. 【原】无脑操作:IDEA + maven + Shiro + SpringBoot + JPA + Thymeleaf实现基础认证权限
  18. LightOJ 1268 Unlucky Strings(KMP+矩阵乘法+基础DP)
  19. Java Web乱码分析及解决方案
  20. VGA Output from STM32F4 Discovery board

热门文章

  1. PMP项目管理学习笔记(6)——整合管理之制订项目管理计划
  2. 51nod 1097 拼成最小的数
  3. 计数器:counter
  4. SOE 第五章
  5. Android(java)学习笔记160:开发一个多界面的应用程序之清单文件
  6. mybatis获取存储过程返回结果
  7. uva1613 K-Graph Oddity
  8. B6. Concurrent 内存模型与线程交互
  9. mosquitto linux部署
  10. sqlserver生成脚本