49-调试器(2)

调试debug

  1. print,
  2. assert
  3. logging :通过设置level,同一个语句输出不同级别的debug信息。
#而且,一条语句可以同时输出到不同地方
  1. pdb以及pdb.set_trace()
  2. IDE
  3. 廖雪峰的心得:其实logging才是真正的王道,以后通过实践看看是否真的如此
#assert
# def foo(s):
    # n = int(s)
    # assert n != 0, 'n is zero!' #如果真的发生了n==0,就打印后面那个字符串
    # return 10 / n

# def main():
    # foo('0')
# main()


#logging
# import logging
# logging.basicConfig(level=logging.INFO) #设置logging的levle: {debug,info,warning,error}

# s = '0'
# n = int(s)
# logging.info('n = %d' % n)
# print(10 / n)


# #pdb
# s = '0'
# n = int(s)
# print(10 / n)
# #到控制台,先切换至当前目录下,
# #python -m pdb test_9.py 
# #输入 {命令1:查看代码,n:单步到下一步,p xxx :查看变量,q:结束debug}



#pdb的加强版:
import pdb

s = '0'
n = int(s)
pdb.set_trace() # 运行到这里会自动暂停,然后在控制台输入命令:{p xxx:查看变量,c:继续运行}
print(10 / n)
posted @ 2018-03-04 14:20  hzhang_NJU  阅读(117)  评论(0编辑  收藏  举报