1. 反射当前模块成员
import sys
def s1():
print ('s1')
def s2():
print ('s2')
this_module = sys.modules[__name__] #sys.modules[__name__] 全局的空间
print(hasattr(this_module, 's1')) 判断s1是否在全局
print(getattr(this_module, 's2')()) 执行全局中的s2函数
%s和%r
class B:
def __str__(self):
return 'str : class B'
def __repr__(self):
return 'repr : class B'
b = B()
print('%s' % b) %s ⇒ str(),比较智能;
print('%r' % b) %r ⇒ repr(),处理较为简单和直接;
在进行格式化输出时,%r 与 %s 的区别就好比 repr() 函数处理对象与 str() 函数处理对象的差别。
例:
s = 'world'
print('hello %s'%s) # hello world
print('hello %r'%s) # hello 'world
内置方法
1