Functions, Finally, and Custom Exceptions

These three concepts are essential for writing robust and maintainable Python code. Here's a breakdown of each:

Functions:

  • Reusable blocks of code that perform a specific task.
  • Defined using the def keyword followed by the function name and parentheses.
  • Can take arguments (inputs) and return values (outputs).
  • Promote code modularity and reusability.

Example:

Python
def greet(name):
  """Prints a greeting message."""
  print(f"Hello, {name}!")

greet("Alice")  # Output: Hello, Alice!

Finally:

  • A block of code that always executes, regardless of whether an exception occurs in the try block.
  • Used for essential tasks like closing files or releasing resources.
  • Ensures these tasks are completed even if an error happens.

Example:

Python
try:
  # Code that might raise an exception
  with open("data.txt", "r") as file:
    data = file.read()
except FileNotFoundError:
  print("Error: File not found")
finally:
  # Always executed, even if there's no exception
  print("File closed")

Custom Exceptions:

  • User-defined exceptions to handle specific errors in your program.
  • Inherit from the built-in Exception class.
  • Provide informative error messages and allow for specific handling.

Example:

Python
class InvalidAgeError(Exception):
  """Raised when an invalid age is provided."""
  pass

def check_age(age):
  if age < 0:
    raise InvalidAgeError("Age cannot be negative")
  # Rest of the code

try:
  check_age(-5)
except InvalidAgeError as e:
  print(f"Error: {e}")

Key Points:

  • Functions help organize code and improve readability.
  • finally ensures critical tasks are executed.
  • Custom exceptions provide better error handling and clarity.

By effectively using these concepts, you can write more robust and maintainable Python applications.

Căutare
Categorii
Citeste mai mult
Computer Programming
Element-specific attributes (alt for images, href for links)
While global attributes can be applied to any HTML element, some attributes are specific to...
By HTML PROGRAMMING LANGUAGE 2024-08-15 01:47:04 0 8K
Computer Programming
HTML Table Colspan & Rowspan
HTML Table Colspan and Rowspan Colspan and rowspan are attributes used to merge cells in a...
By HTML PROGRAMMING LANGUAGE 2024-09-06 01:36:07 0 12K
Technology
Digital Divide
The digital divide refers to the gap between individuals, households, businesses, and geographic...
By ALAGAI AUGUSTEN 2024-07-16 16:59:32 0 9K
Physics
S.6 Physics 2 Facilitation 2024
https://acrobat.adobe.com/id/urn:aaid:sc:EU:fd4a0074-f4ff-48b8-9f7c-955b2dd2b3f2
By Landus Mumbere Expedito 2024-07-19 13:10:33 0 11K
Technology
Creating a login form using HTML and CSS
Creating a login form using HTML and CSS is a fundamental skill in web development. Here's a...
By Tebtalks Access 2025-01-21 01:24:55 0 11K
Talksphare https://talksphare.com