Skip to content

Instantly share code, notes, and snippets.

import functools
class MaybeException(Exception):
pass
class Just:
def __init__(self, value):
self.value = value
class Just:
def __init__(self, value):
self.value = value
def __repr__(self):
return f'Just {self.value}'
def maybe(fn):
@functools.wraps(fn)
def positive_division(num, den):
res = num / den
if res <= 0:
return None
return res
import functools
class MaybeException(Exception):
pass
def maybe(fn):
@functools.wraps(fn)
def wrapper(*args, **kwargs):
import functools
def maybe(fn):
@functools.wraps(fn)
def wrapper(*args, **kwargs):
try:
return fn(*args, **kwargs)
except Exception:
return None
import functools
def maybe(fn):
@functools.wraps(fn)
def wrapper(*args, **kwargs):
try:
return fn(*args, **kwargs)
except Exception:
return None
import functools
def maybe(fn):
@functools.wraps(fn)
def wrapper(*args, **kwargs):
try:
return fn(*args, **kwargs)
except Exception:
return None
def maybe(fn, *args, **kwargs):
try:
return fn(*args, **kwargs)
except Exception:
return None
def divide(num, den):
return num / den
import typing
def divide(num: float, den: float) -> typing.Optional[float]:
try:
return num / den
except ZeroDivisionError:
return None
import typing
def divide(num: float, den: float) -> typing.Optional[float]:
return num / den
print(divide(1, 2))
print(divide(1, 0))