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的Django框架中实现Hacker News的一些功能
Apr 17 Python
python利用装饰器进行运算的实例分析
Aug 04 Python
转换科学计数法的数值字符串为decimal类型的方法
Jul 16 Python
用python实现k近邻算法的示例代码
Sep 06 Python
python中join()方法介绍
Oct 11 Python
Python读取txt某几列绘图的方法
Oct 14 Python
python模拟菜刀反弹shell绕过限制【推荐】
Jun 25 Python
ERLANG和PYTHON互通实现过程详解
Jul 05 Python
Python二维数组实现求出3*3矩阵对角线元素的和示例
Nov 29 Python
如何将 awk 脚本移植到 Python
Dec 09 Python
Tensorflow不支持AVX2指令集的解决方法
Feb 03 Python
pytorch交叉熵损失函数的weight参数的使用
May 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
造势之举?韩国总统候选人发布《星际争霸》地图
2017/04/22 星际争霸
基于mysql的bbs设计(五)
2006/10/09 PHP
在openSUSE42.1下编译安装PHP7 的方法
2015/12/24 PHP
php中让人头疼的浮点数运算分析
2016/10/10 PHP
php通过会话控制实现身份验证实例
2016/10/18 PHP
JavaScript 设计模式 安全沙箱模式
2010/09/24 Javascript
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
js+JQuery返回顶部功能如何实现
2012/12/03 Javascript
JS弹出窗口代码大全(详细整理)
2012/12/21 Javascript
javaScript NameSpace 简单说明介绍
2013/07/18 Javascript
jquery+html5时钟特效代码分享(可设置闹钟并且语音提醒)
2020/03/30 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
2016/07/27 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
理解javascript中的Function.prototype.bind的方法
2017/02/03 Javascript
详解vue-router 2.0 常用基础知识点之导航钩子
2017/05/10 Javascript
jQuery remove()过滤被删除的元素(推荐)
2017/07/18 jQuery
Vue的Class与Style绑定的方法
2017/09/01 Javascript
自制简易打赏功能的实例
2017/09/02 Javascript
在vue项目中引入highcharts图表的方法(详解)
2018/03/05 Javascript
解决vue js IOS H5focus无法自动弹出键盘的问题
2018/08/30 Javascript
[06:16]DOTA2守卫传承者——职业选手谈心路历程
2015/02/26 DOTA
在Python的Django框架中更新数据库数据的方法
2015/07/17 Python
Python使用gensim计算文档相似性
2016/04/10 Python
python matplotlib如何给图中的点加标签
2019/11/14 Python
TensorFlow内存管理bfc算法实例
2020/02/03 Python
解决python打开https出现certificate verify failed的问题
2020/09/03 Python
HTML5中原生的右键菜单创建方法
2016/06/28 HTML / CSS
Europcar英国:英国汽车和货车租赁
2017/01/21 全球购物
菲律宾最大的网上花店和礼品店:PhilFlower.com
2018/02/09 全球购物
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
求职简历自荐信范文
2013/10/21 职场文书
大学生个人简历自我评价
2013/11/16 职场文书
采购主管工作职责
2013/12/12 职场文书
护理专业毕业自我鉴定
2019/08/12 职场文书
Java Dubbo框架知识点梳理
2021/06/26 Java/Android
使用CSS实现小三角边框原理解析
2021/11/07 HTML / CSS