这里dic的用法是什么

问题描述 投票:0回答:1

我正在阅读Python source codes,并且在Python-2.7.10 / Lib / multiprocessing / managers.py中找到了此代码。

[我只是想知道% (meth, meth) in dic在这里的用法是什么,因为我认为%首先会关联字符串,而exec总是返回None

def MakeProxyType(name, exposed, _cache={}):
    '''
    Return an proxy type whose methods are given by `exposed`
    '''
    exposed = tuple(exposed)
    try:
        return _cache[(name, exposed)]
    except KeyError:
        pass

    dic = {}

    for meth in exposed:
        exec '''def %s(self, *args, **kwds):
        return self._callmethod(%r, args, kwds)''' % (meth, meth) in dic

    ProxyType = type(name, (BaseProxy,), dic)
    ProxyType._exposed_ = exposed
    _cache[(name, exposed)] = ProxyType
    return ProxyType
python python-2.x
1个回答
1
投票

您可以将其改写为

© www.soinside.com 2019 - 2024. All rights reserved.