打印出python 当前全局变量和入口参数的所有属性

yipeiwu_com7年前Python基础
def cndebug(obj=False):
"""
Author : Nemon
Update : 2009.7.1
TO use : cndebug(obj) or cndebug() or MyObject.debug=cndebug
License: GPL
"""
print('='*80)
print('='*30 + ' GLOBAL VARIABLES ' +'='*30)
print('='*80)
g=globals()
for x,y in g.iteritems():
if x[:1]!='_':
print ( x + ' := '+ str(type(y)))
print ( y)
print ( '')
if obj:
print('='*80)
print('='*30 + ' LOCAL VARIABLES ' +'='*30)
print('='*80)
for o in dir(obj):
#if o[:1]!='_':
print (o + ' := ' + str(type(getattr(obj,o))))
print ( getattr(obj,o))
print ( '')
print('='*80)
o=raw_input('PRESS <ENTER> TO RESUME...')
del x,y,o


简单用法:

1)打印出python 当前全局变量

cndebug()#

2)打印出当前全局变量和myobj的所有属性

myobj={}

cndebug(myobj)

扩展用法——当作类方法,打印实例的成员

>>> class MyObj():
... debug=cndebug
...
>>> myObj1=MyObj()
>>> myObj1.debug()

相关文章

python把数组中的数字每行打印3个并保存在文档中的方法

python把数组中的数字每行打印3个并保存在文档中的方法

如下所示: arrs=[2,15,48,4,5,6,7,6,4,1,2,3,6,6,7,4,6,8] f=open('test.txt','w+') count=0 for temp...

python中split方法用法分析

本文实例讲述了python中split方法用法。分享给大家供大家参考。具体分析如下: split 是非常重要的字符串方法,它是join的逆方法,用来将字符串分割成序列 >>...

PyQt打开保存对话框的方法和使用详解

PyQt之打开保存对话框(QFileDialog)的方法和使用 一、控件说明 QFileDialog是用于打开和保存文件的标准对话框,继承自QDialog类。 QFileDialog在打...

使用Python做垃圾分类的原理及实例代码附源码

使用Python做垃圾分类的原理及实例代码附源码

0 引言 纸巾再湿也是干垃圾?瓜子皮再干也是湿垃圾??最近大家都被垃圾分类折磨的不行,傻傻的你是否拎得清?😭😭😭自2019.07.01开始...

pyside写ui界面入门示例

PySide是一个免费的软件,与PyQt不同之处在于使用了LGPL,允许PySide免费的开发商业软件。 PySide有15个模块。这些模块支持对GUI,多媒体,XML,网络以及数据库进...