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模块学习 re 正则表达式
May 19 Python
Python导入txt数据到mysql的方法
Apr 08 Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 Python
深入剖析Python的爬虫框架Scrapy的结构与运作流程
Jan 20 Python
Python实现的HMacMD5加密算法示例
Apr 03 Python
详解python的sorted函数对字典按key排序和按value排序
Aug 10 Python
Python实现的连接mssql数据库操作示例
Aug 17 Python
Pandas实现dataframe和np.array的相互转换
Nov 30 Python
使用keras实现densenet和Xception的模型融合
May 23 Python
Python xlwt模块使用代码实例
Jun 10 Python
Pytorch1.5.1版本安装的方法步骤
Dec 31 Python
python执行js代码的方法
May 13 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
探讨:web上存漏洞及原理分析、防范方法
2013/06/29 PHP
PHP二维数组排序简单实现方法
2016/02/14 PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
2016/07/13 PHP
PHP实现大数(浮点数)取余的方法
2017/02/18 PHP
PHP实现数组的笛卡尔积运算示例
2017/12/15 PHP
CodeIgniter框架数据库基本操作示例
2018/05/24 PHP
php微信开发之关注事件
2018/06/14 PHP
Laravel框架之解决前端显示图片问题
2019/10/24 PHP
javascript显示选择目录对话框的代码
2008/11/10 Javascript
用jQuery简化JavaScript开发分析
2009/02/19 Javascript
javascript中input中readonly和disabled区别介绍
2012/10/23 Javascript
jquery slibings选取同级其他元素的实现代码
2013/11/15 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
2014/06/10 Javascript
jquery中$(#form :input)与$(#form input)的区别
2014/08/18 Javascript
理解javascript中的回调函数(callback)
2014/09/02 Javascript
javascript消除window.close()的提示窗口
2015/05/20 Javascript
简介JavaScript中的setHours()方法的使用
2015/06/11 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
AngularJS基础 ng-srcset 指令简单示例
2016/08/03 Javascript
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
vue+iview动态渲染表格详解
2019/03/19 Javascript
JavaScript array常用方法代码实例详解
2020/09/02 Javascript
基于Cesium绘制抛物弧线
2020/11/18 Javascript
python和pygame实现简单俄罗斯方块游戏
2021/02/19 Python
python实现合并两个排序的链表
2019/03/03 Python
Django model select的多种用法详解
2019/07/16 Python
python系统指定文件的查找只输出目录下所有文件及文件夹
2020/01/19 Python
Python文件操作及内置函数flush原理解析
2020/10/13 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
Html5适配iphoneX刘海屏的简单实现
2019/04/09 HTML / CSS
毕业生就业推荐表自我鉴定
2014/03/20 职场文书
申请吧主发表的感言
2015/08/03 职场文书
85句关于理想的名言警句大全
2019/08/22 职场文书
JavaScript实现两个数组的交集
2022/03/25 Javascript
vue中的可拖拽宽度div的实现示例
2022/04/08 Vue.js