- 大家好,我是Lex 喜欢欺负超人那个Lex
- 擅长领域:python开发、网络安全渗透、Windows域控Exchange架构
- 今日重点:调试python不要再用print()了,甜甜的冰激凌调试工具来了
望着窗外,太阳在乌云背后努力想把阳光撒向人间
雨过天青云破处吹来的缕缕微风拂过你的脸颊
迎着微风贪婪的深吸一口
拔掉电源,回想你这一生
最依赖的python的函数是什么
emmm,我猜一定是print()
从入坑案例 print(‘Hello World’) 开始
你的代码越写越多,逻辑越来越复杂
但是在代码的巷陌之间
总是穿插着大量的print()调试语句
输出的结果,让人欢喜让人忧
答应我,从今天开始,忘了他
以后用ice cream
1、安装
pip install icecream
2、调用方法
from icecream import ic ic('test')
#案例1:计算平方数 def pingfang(number): return number*number
print(pingfang(2)) print(pingfang(3)) print(pingfang(4))
4 9 16
输出结果并不清晰,输入参数都看不见。
优化一下:
print('2的平方是:',pingfang(2)) print('3的平方是:',pingfang(3)) print('4的平方是:',pingfang(4))
2的平方是:4 3的平方是:9 4的平方是:16
这样的输出,才是合理的,但是这样我们每个都要这么写,估计会疯掉。
而且,当代码正式上线运行的时候,我们要注释大量的代码。
不扯了,上icecream
#引入icecream模块 代替print from icecream import ic def pingfang(number): return number*number #使用ic进行调试 ic(pingfang(2)) ic(pingfang(3)) ic(pingfang(4))
ic| pingfang(2): 4 ic| pingfang(3): 9 ic| pingfang(4): 16
#示例2:科比字典访问 kobe_dict = { 'name': 'KobeBryant', 'team': 'LALakers', 'number': 24, 'halloffame' : True }
访问方法:
#print方法 print(kobe_dict['team']) #ic方法 ic(kobe_dict['team'])
输出结果对比:
#print输出 LALakers #ic输出 ic| kobe_dict['team']: 'LALakers'
#示例3:湖人类 class Lakers(): city = 'los angles' player = 'kobe' NBA = True
输出结果对比:
#print方法输出 lakers=Lakers() print(lakers.city) print(lakers.NBA) #ic方法输出 ic(lakers.city) ic(lakers.NBA)
#示例4:记录代码位置 def position(name): if name == 'kobe': #啪啪啪,业务代码一大堆 ic() else: #啪啪啪,业务代码又一大堆 ic() if __name__ == '__main__': position('kobe') position('micheal')
输出结果:
ic.disable() #关闭ic调试。[默认开启]
from icecream import ic #关闭所有ic调试输出 ic.disable() #业务代码一大堆,啪啪啪... #...
ic.enable() #启用ic调试
ic| test-ic.py:28 in position() at 14:28:51.172 ic| test-ic.py:31 in position() at 14:28:51.190
包括前缀:ic 文件名:test-ic.py 代码位置:28行 函数:position()
ic.configureOutput(prefix='lex的爬虫 | ') ic('运行到这里了...')
2、输出代码运行的时间
#定义一个返回当前时间的函数 from datetime import datetime def now(): return f'[{datetime.now()}]' #将函数返回值,配置进ic里 ic.configureOutput(prefix=now) ic('运行到这里了...')
【python实战】前女友婚礼,python破解婚礼现场的WIFI,把名称改成了
【python实战】前女友发来加密的 “520快乐.pdf“,我用python破解开之后,却发现
【python实战】昨晚,我用python帮隔壁小姐姐P证件照自拍,然后发现…
【python实战】女友半夜加班发自拍python男友用30行代码发现惊天秘密
【python实战】python你TM太皮了——区区30行代码就能记录键盘的一举一动
【python实战】女神相册密码忘记了,我只用Python写了20行代码~~~
一起来学pygame吧 游戏开发30例(二)——塔防游戏
一起来学pygame吧 游戏开发30例(四)——俄罗斯方块小游戏
渗透测试实战专栏
Windows AD/Exchange管理专栏
Linux高性能服务器搭建
PowerShell自动化专栏
CSDN出的Python全栈知识图谱,太强了,推荐给大家!