我想看看shlex
对于我正在尝试构建的东西是否是一个不错的选择,所以我想我会把它置于调试模式来玩弄它。只是,shlex 的构造函数有一个奇怪的事情:它设置self.debug
为0
然后立即检查它是否为真。
…
self.debug = 0
self.token = ''
self.filestack = deque()
self.source = None
if self.debug:
print 'shlex: reading from %s, line %d' \
% (self.instream, self.lineno)
我知道 Python 有一些强大的元编程特性,但我不知道它是如何工作的——即使我重写了构造函数,也没有编程方式可以在值的设置和它的使用之间进行切换。
是否应该有一种方法来输出if self.debug
条件中的语句(如果是,如何输出?),它是一个错误,还是我没有考虑过第三种可能性?