test_opcodes.py

来自「minimal python variant for small footpri」· Python 代码 · 共 102 行

PY
102
字号
# Python test set -- part 2, opcodesfrom test_support import *print '2. Opcodes'print 'XXX Not yet fully implemented'print '2.1 try inside for loop'n = 0for i in range(10):        n = n+i        try: 1/0        except NameError: pass        except ZeroDivisionError: pass        except TypeError: pass        try: pass        except: pass        try: pass        finally: pass        n = n+iif n <> 90:        raise TestFailed, 'try inside for'print '2.2 raise class exceptions'class AClass: passclass BClass(AClass): passclass CClass: passclass DClass(AClass):    def __init__(self, ignore):        passtry: raise AClass()except: passtry: raise AClass()except AClass: passtry: raise BClass()except AClass: passtry: raise BClass()except CClass: raise TestFailedexcept: passa = AClass()b = BClass()try: raise AClass, bexcept BClass, v:        if v != b: raise TestFailedelse: raise TestFailedtry: raise bexcept AClass, v:        if v != b: raise TestFailed# not enough argumentstry:  raise BClass, aexcept TypeError: passtry:  raise DClass, aexcept DClass, v:    if not isinstance(v, DClass):        raise TestFailedprint '2.3 comparing function objects'f = eval('lambda: None')g = eval('lambda: None')if f != g: raise TestFailedf = eval('lambda a: a')g = eval('lambda a: a')if f != g: raise TestFailedf = eval('lambda a=1: a')g = eval('lambda a=1: a')if f != g: raise TestFailedf = eval('lambda: 0')g = eval('lambda: 1')if f == g: raise TestFailedf = eval('lambda: None')g = eval('lambda a: None')if f == g: raise TestFailedf = eval('lambda a: None')g = eval('lambda b: None')if f == g: raise TestFailedf = eval('lambda a: None')g = eval('lambda a=None: None')if f == g: raise TestFailedf = eval('lambda a=0: None')g = eval('lambda a=1: None')if f == g: raise TestFailed

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?