本文整理汇总了Python中pydoc.allmethods方法的典型用法代码示例。如果您正苦于以下问题:Python pydoc.allmethods方法的具体用法?Python pydoc.allmethods怎么用?Python pydoc.allmethods使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pydoc
的用法示例。
在下文中一共展示了pydoc.allmethods方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_allmethods
# 需要导入模块: import pydoc [as 别名]
# 或者: from pydoc import allmethods [as 别名]
def test_allmethods(self):
# issue 17476: allmethods was no longer returning unbound methods.
# This test is a bit fragile in the face of changes to object and type,
# but I can't think of a better way to do it without duplicating the
# logic of the function under test.
class TestClass(object):
def method_returning_true(self):
return True
# What we expect to get back: everything on object...
expected = dict(vars(object))
# ...plus our unbound method...
expected['method_returning_true'] = TestClass.method_returning_true
# ...but not the non-methods on object.
del expected['__doc__']
del expected['__class__']
# inspect resolves descriptors on type into methods, but vars doesn't,
# so we need to update __subclasshook__.
expected['__subclasshook__'] = TestClass.__subclasshook__
methods = pydoc.allmethods(TestClass)
self.assertDictEqual(methods, expected)
示例2: test_allmethods
# 需要导入模块: import pydoc [as 别名]
# 或者: from pydoc import allmethods [as 别名]
def test_allmethods(self):
# issue 17476: allmethods was no longer returning unbound methods.
# This test is a bit fragile in the face of changes to object and type,
# but I can't think of a better way to do it without duplicating the
# logic of the function under test.
class TestClass(object):
def method_returning_true(self):
return True
# What we expect to get back: everything on object...
expected = dict(vars(object))
# ...plus our unbound method...
expected['method_returning_true'] = TestClass.method_returning_true
# ...but not the non-methods on object.
del expected['__doc__']
del expected['__class__']
# inspect resolves descriptors on type into methods, but vars doesn't,
# so we need to update __subclasshook__ and __init_subclass__.
expected['__subclasshook__'] = TestClass.__subclasshook__
expected['__init_subclass__'] = TestClass.__init_subclass__
methods = pydoc.allmethods(TestClass)
self.assertDictEqual(methods, expected)
示例3: usage
# 需要导入模块: import pydoc [as 别名]
# 或者: from pydoc import allmethods [as 别名]
def usage(obj, selfname='self'):
import inspect
str(obj) # In case it's lazy, this will load it.
if not isinstance(obj, class_types):
obj = obj.__class__
print('%s supports the following operations:' % obj.__name__)
for (name, method) in sorted(pydoc.allmethods(obj).items()):
if name.startswith('_'): continue
if getattr(method, '__deprecated__', False): continue
args, varargs, varkw, defaults = inspect.getargspec(method)
if (args and args[0]=='self' and
(defaults is None or len(args)>len(defaults))):
args = args[1:]
name = '%s.%s' % (selfname, name)
argspec = inspect.formatargspec(
args, varargs, varkw, defaults)
print(textwrap.fill('%s%s' % (name, argspec),
initial_indent=' - ',
subsequent_indent=' '*(len(name)+5)))
##########################################################################
# IDLE
##########################################################################
示例4: usage
# 需要导入模块: import pydoc [as 别名]
# 或者: from pydoc import allmethods [as 别名]
def usage(obj, selfname='self'):
import inspect
str(obj) # In case it's lazy, this will load it.
if not isinstance(obj, (types.TypeType, types.ClassType)):
obj = obj.__class__
print '%s supports the following operations:' % obj.__name__
for (name, method) in sorted(pydoc.allmethods(obj).items()):
if name.startswith('_'): continue
if getattr(method, '__deprecated__', False): continue
args, varargs, varkw, defaults = inspect.getargspec(method)
if (args and args[0]=='self' and
(defaults is None or len(args)>len(defaults))):
args = args[1:]
name = '%s.%s' % (selfname, name)
argspec = inspect.formatargspec(
args, varargs, varkw, defaults)
print textwrap.fill('%s%s' % (name, argspec),
initial_indent=' - ',
subsequent_indent=' '*(len(name)+5))
##########################################################################
# IDLE
##########################################################################
示例5: usage
# 需要导入模块: import pydoc [as 别名]
# 或者: from pydoc import allmethods [as 别名]
def usage(obj, selfname='self'):
str(obj) # In case it's lazy, this will load it.
if not isinstance(obj, class_types):
obj = obj.__class__
print('%s supports the following operations:' % obj.__name__)
for (name, method) in sorted(pydoc.allmethods(obj).items()):
if name.startswith('_'):
continue
if getattr(method, '__deprecated__', False):
continue
if sys.version_info[0] >= 3:
getargspec = inspect.getfullargspec
else:
getargspec = inspect.getargspec
args, varargs, varkw, defaults = getargspec(method)[:4]
if (
args
and args[0] == 'self'
and (defaults is None or len(args) > len(defaults))
):
args = args[1:]
name = '%s.%s' % (selfname, name)
argspec = inspect.formatargspec(args, varargs, varkw, defaults)
print(
textwrap.fill(
'%s%s' % (name, argspec),
initial_indent=' - ',
subsequent_indent=' ' * (len(name) + 5),
)
)
##########################################################################
# IDLE
##########################################################################