python -- 程序异常与调试(程序调试)

淡淡的烟草味﹌ 2021-11-16 12:18 495阅读 0赞

一、程序调试

A、使用assert语句检测程序代码中的错误。

  assert 表达式[, 参数]

  如果表达式为True,则继续往下运行;如果为False,则抛出一个AssertionError异常,并且输出asser语句的参数作为错误信息字符串。

B、使用日志模块logging打印跟踪信息,调试程序。

  import logging

  logging.basicConfig(level=logging.DEBUG)

  logging.info()

C、使用PyCharm的调试器调试序(Debug)。

  1. # -----------------------------------------
  2. # 使用assert语句检测程序代码中的错误
  3. # -----------------------------------------
  4. # 如果参数类型不是字符串,则抛出AssertionError异常
  5. def check_type(arg):
  6. assert type(arg) == str, "参数类型不是字符串"
  7. check_type("10")
  8. # 如果父亲的年龄小于儿子的年龄,就抛出AssertionError异常
  9. f_age = 50 # 父亲的年龄
  10. s_age = 22 # 儿子的年龄
  11. assert f_age > s_age, "错误的父子年龄信息!"
  12. import logging
  13. # logging.basicConfig(level=logging.DEBUG) # 配置日志的显示级别
  14. # 通过格式化字符串指定输出信息的格式
  15. logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(filename)s - %(levelname)s - %(message)s')
  16. # -----------------------------------------
  17. # 使用日志模块logging打印跟踪信息,调试程序
  18. # -----------------------------------------
  19. x = 1
  20. while x < 5:
  21. for y in range(1, 5):
  22. # 打印跟踪信息
  23. logging.info("x={}, y={}".format(x, y))
  24. # do something
  25. x += 1
  26. # logging记录信息的级别有debug、info、warning、error和critical
  27. logging.debug("logging debug")
  28. logging.info("logging info")
  29. logging.warning("logging warning")
  30. logging.error("logging error")
  31. logging.critical("logging critical")
  32. 打印logging.DEBUG日志结果如下:

1446880-20190721225539660-1264639322.png

调试

1446880-20190721230508726-635323112.png

转载于:https://www.cnblogs.com/Teachertao/p/11223285.html

发表评论

表情:
评论列表 (有 0 条评论,495人围观)

还没有评论,来说两句吧...

相关阅读

    相关 程序调试

    编写程序时,不可避免的会犯错误。每一个程序都离不开反复的调试、修改最终才能完成,所以说,调试程序是编程过程中必不可少的一个过骤,那么,程序调试应该如何做呢? 程序设计中常见的