Knowledge organisersSubprograms
Reasons to split code.
Subprograms (functions and procedures) break code into reusable, named blocks. This makes programs shorter, easier to read, test, and maintain.
# Without subprogram: repeated code
print("="*20)
print("Welcome")
print("="*20)
# With subprogram: reusable
def show_header():
print("="*20)
print("Welcome")
print("="*20)
show_header()