python 扩展print打印文件路径和当前时间信息的实例代码


Posted in Python onOctober 11, 2019

pinrt函数我们经常使用,但是有时候python自带的print函数打印的信息不够详细,我们可以扩展一下,打印更多的信息,例如程序文件绝对路径、当前日期时间、消息等等。这里我参考了ydf网友写的猴子补丁(monkey patch)法。

# -*- coding: utf-8 -*-
# @Author : ydf
# @Time  : 2019/5/9 19:02
"""
不直接给print打补丁,自己重新赋值。
"""
import sys
import time
# noinspection PyProtectedMember,PyUnusedLocal,PyIncorrectDocstring
def nb_print(*args, sep=' ', end='\n', file=None):
  """
  超流弊的print补丁
  :param x:
  :return:
  """
  # 获取被调用函数在被调用时所处代码行数
  line = sys._getframe().f_back.f_lineno
  # 获取被调用函数所在模块文件名
  file_name = sys._getframe(1).f_code.co_filename
  # sys.stdout.write(f'"{__file__}:{sys._getframe().f_lineno}"  {x}\n')
  args = (str(arg) for arg in args) # REMIND 防止是数字不能被join
  # 打印到标准输出,并设置文字和背景颜色
  sys.stdout.write(f'"{file_name}:{line}" {time.strftime("%H:%M:%S")} \033[0;94m{"".join(args)}\033[0m\n') # 36 93 96 94
print = nb_print # 这是打猴子补丁。
if __name__ == '__main__':
  print(0)
  nb_print(123, 'abc')
  print = nb_print
  print(456, 'def')

实例:

"D:/monkey_print2.py:31"  14:40:34  0
"D:/monkey_print2.py:32"  14:40:34  123abc
"D:/monkey_print2.py:34"  14:40:34  456def

总结

以上所述是小编给大家介绍的python 扩展print打印文件路径和当前时间信息,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python使用urllib模块开发的多线程豆瓣小站mp3下载器
Jan 16 Python
python实现网页链接提取的方法分享
Feb 25 Python
Python实现栈的方法
May 26 Python
python图像处理之镜像实现方法
May 30 Python
python学习之面向对象【入门初级篇】
Jan 21 Python
Python之多线程爬虫抓取网页图片的示例代码
Jan 10 Python
python删除不需要的python文件方法
Apr 24 Python
浅谈pytorch和Numpy的区别以及相互转换方法
Jul 26 Python
python虚拟环境完美部署教程
Aug 06 Python
Django中使用haystack+whoosh实现搜索功能
Oct 08 Python
基于Python批量生成指定尺寸缩略图代码实例
Nov 20 Python
超级实用的8个Python列表技巧
Aug 24 Python
python脚本调用iftop 统计业务应用流量的思路详解
Oct 11 #Python
Python3+Requests+Excel完整接口自动化测试框架的实现
Oct 11 #Python
python二进制读写及特殊码同步实现详解
Oct 11 #Python
Python+Tensorflow+CNN实现车牌识别的示例代码
Oct 11 #Python
命令行运行Python脚本时传入参数的三种方式详解
Oct 11 #Python
python中对_init_的理解及实例解析
Oct 11 #Python
pandas数据处理进阶详解
Oct 11 #Python
You might like
php将mysql数据库整库导出生成sql文件的具体实现
2014/01/08 PHP
php 类自动载入的方法
2015/06/03 PHP
Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
2019/05/08 PHP
Laravel find in set排序实例
2019/10/09 PHP
jQuery插件 tabBox实现代码
2010/02/09 Javascript
基于JQuery的数字改变的动画效果--可用来做计数器
2010/08/11 Javascript
javascript定义函数的方法
2010/12/06 Javascript
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
JS过滤url参数特殊字符的实现方法
2013/12/24 Javascript
Javascript 实现图片无缝滚动
2014/12/19 Javascript
JS添加或修改控件的样式(Class)实现方法
2016/10/15 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
JavaScript实现自定义媒体播放器方法介绍
2017/01/03 Javascript
angularjs+bootstrap菜单的使用示例代码
2017/03/07 Javascript
微信小程序自定义弹窗实现详解(可通用)
2019/07/04 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
2011/03/13 Python
Python中functools模块的常用函数解析
2016/06/30 Python
Python多线程实现同步的四种方式
2017/05/02 Python
使用Python设计一个代码统计工具
2018/04/04 Python
配置 Pycharm 默认 Test runner 的图文教程
2018/11/30 Python
Python K最近邻从原理到实现的方法
2019/08/15 Python
python通过链接抓取网站详解
2019/11/20 Python
Python基于Socket实现简单聊天室
2020/02/17 Python
python实现xml转json文件的示例代码
2020/12/30 Python
CSS3对背景图片的裁剪及尺寸和位置的设定方法
2016/03/07 HTML / CSS
德国汽车零件和汽车配件网上商店:kfzteile24
2018/11/14 全球购物
初中三年毕业生的自我评价分享
2014/02/14 职场文书
小学端午节活动方案
2014/03/13 职场文书
自我鉴定总结
2014/03/24 职场文书
2016七夕情人节感言
2015/12/09 职场文书
《扇形统计图》教学反思
2016/02/17 职场文书
redis实现排行榜功能
2021/05/24 Redis
python读取mnist数据集方法案例详解
2021/09/04 Python
Python的三个重要函数详解
2022/01/18 Python
nginx rewrite功能使用场景分析
2022/05/30 Servers