编程语言
首页 > 编程语言> > 答应我,忘了他!调试python不要再用print了!冰淇淋工具来陪你甜

答应我,忘了他!调试python不要再用print了!冰淇淋工具来陪你甜

作者:互联网

  • 大家好,我是Lex 喜欢欺负超人那个Lex
  • 擅长领域:python开发、网络安全渗透、Windows域控Exchange架构
  • 今日重点:调试python不要再用print()了,甜甜的冰激凌调试工具来了

事情是这样的


ice cream

1、安装

pip install icecream

2、调用方法

from icecream import ic
ic('test')

案例解析

案例1:访问函数

#案例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:访问字典

#示例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:访问对象

#示例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:精准调试代码

#示例4:记录代码位置
def position(name):
    if name == 'kobe':
        #啪啪啪,业务代码一大堆
        ic()
    else:
        #啪啪啪,业务代码又一大堆
        ic()
if __name__ == '__main__':
	position('kobe')
    position('micheal')

输出结果:


案例5:始乱终弃很方便

ic.disable() #关闭ic调试。[默认开启]
from icecream import ic
#关闭所有ic调试输出
ic.disable()
#业务代码一大堆,啪啪啪...
#...
ic.enable()  #启用ic调试

案例6:自定义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实战

pygame系列文章【订阅专栏,获取完整源码】

CSDN官方学习推荐 ↓ ↓ ↓

CSDN出的Python全栈知识图谱,太强了,推荐给大家!
在这里插入图片描述

标签:输出,python,代码,冰淇淋,pingfang,print,ic
来源: https://blog.csdn.net/weixin_42350212/article/details/118416156