cython
20 строк · 458.0 Байт
1# cython: nonecheck=True
2# ^^^ Turns on nonecheck globally
3
4import cython5
6@cython.cclass7class MyClass:8pass9
10# Turn off nonecheck locally for the function
11@cython.nonecheck(False)12def func():13obj: MyClass = None14try:15# Turn nonecheck on again for a block16with cython.nonecheck(True):17print(obj.myfunc()) # Raises exception18except AttributeError:19pass20print(obj.myfunc()) # Hope for a crash!21