import re def detect_print_instead_of_return(code): regex = re.compile( r"def .+:.*\n(?P +)\S.*(?:\n(?P=indent)(?:(?P *return.*)|(?P *print\(.*)|.*))+", re.MULTILINE, ) result = regex.search(code) if not result: return False if result.group("return"): return False if not result.group("print"): return False # print("Flaw 6: Print instead of return") # print(result.group(0)) return True