Python 获取当前执行文件名和行数

这个发现是 logger 或者 traceback 是有这个功能的,所以简单的研究了一下,其实很简单:

1
2
3
4
5
6
7
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys

print sys._current_frames().values()[0].f_code.co_filename,
print sys._current_frames().values()[0].f_lineno

执行结果如下:

1
printno.py 7