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在Windows8下获取本机ip地址的方法
Mar 14 Python
在Python中使用zlib模块进行数据压缩的教程
Jun 26 Python
简介Django框架中可使用的各类缓存
Jul 23 Python
小议Python中自定义函数的可变参数的使用及注意点
Jun 21 Python
Python3 queue队列模块详细介绍
Jan 05 Python
opencv python 傅里叶变换的使用
Jul 21 Python
python 通过 socket 发送文件的实例代码
Aug 14 Python
python pygame模块编写飞机大战
Nov 20 Python
python实现多张图片拼接成大图
Jan 15 Python
Python socket连接中的粘包、精确传输问题实例分析
Mar 24 Python
解析python 类方法、对象方法、静态方法
Aug 15 Python
pycharm安装深度学习pytorch的d2l包失败问题解决
Mar 25 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新手上路(五)
2006/10/09 PHP
修改Zend引擎实现PHP源码加密的原理及实践
2008/04/14 PHP
PHP中的一些常用函数收集
2015/05/26 PHP
PHP异常处理Exception类
2015/12/11 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
Yii2使用dropdownlist实现地区三级联动功能的方法
2016/07/18 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解
2019/04/03 PHP
克隆javascript对象的三个方法小结
2011/01/12 Javascript
javascript学习笔记(九)javascript中的原型(prototype)及原型链的继承方式
2011/04/12 Javascript
基于jquery实现一张图片点击鼠标放大再点缩小
2013/09/29 Javascript
jQuery插件windowScroll实现单屏滚动特效
2015/07/14 Javascript
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
vue 2.8.2版本配置刚进入时候的默认页面方法
2018/09/21 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
layui数据表格 table.render 报错的解决方法
2019/09/29 Javascript
[48:05]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VGJ.T vs VP
2018/03/31 DOTA
[45:14]Optic vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
python3设计模式之简单工厂模式
2017/10/17 Python
python在文本开头插入一行的实例
2018/05/02 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
2019/01/30 Python
Django shell调试models输出的SQL语句方法
2019/08/29 Python
Python 实现网课实时监控自动签到、打卡功能
2020/03/12 Python
使用keras2.0 将Merge层改为函数式
2020/05/23 Python
Python基于数列实现购物车程序过程详解
2020/06/09 Python
python安装cx_Oracle和wxPython的方法
2020/09/14 Python
小学毕业家长寄语
2014/01/19 职场文书
水电工岗位职责
2014/02/12 职场文书
大学生学习2014年全国两会心得体会
2014/03/12 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
2014最新党员违纪检讨书
2014/10/12 职场文书
Python实现socket库网络通信套接字
2021/06/04 Python
CSS中Single Div 绘图技巧的实现
2021/06/18 HTML / CSS
海贼王十大潜力果实,路飞仅排第十,第一可毁世界(震震果实)
2022/03/18 日漫