Lesson 1: Standard Python Library

In Python, libraries and modules are an essential part of the language, enabling you to reuse prewritten code and perform complex tasks efficiently without reinventing the wheel. This lesson focuses on the standard Python library, which is a collection of modules that are included with Python. We’ll explore how to import libraries, and use some commonly used modules such as math, datetime, and os. Additionally, we’ll also touch upon other useful standard libraries that can enhance your programming experience.

1. Importing Libraries

Before you can use any library or module in your Python code, you must import it. Python provides a simple way to import modules using the import keyword.

Syntax for Importing:

python
import module_name

 

This imports the module as a whole, and you can access its functions and attributes by referencing the module name. For example:

python
import math

 

Alternatively, you can import specific functions or attributes from a module to make the code more concise:

python
from module_name import function_name
 

Example:

python
from math import sqrt

 

This allows you to use the sqrt() function directly without referencing the math module.

Renaming Modules:

You can also rename a module during import for easier access using the as keyword:

python
import math as m

 

Now, you can use m.sqrt() instead of math.sqrt().

2. Using the math Module

The math module provides mathematical functions that allow you to perform advanced mathematical operations. It includes trigonometric functions, logarithmic functions, and constants like pi (math.pi).

Some Common Functions in math Module:

  • sqrt(x): Returns the square root of x.
  • pow(x, y): Returns xraised to the power of y.
  • sin(x): Returns the sine of x(where x is in radians).
  • cos(x): Returns the cosine of x(in radians).
  • pi: Constant representing the value of pi.
  • factorial(x): Returns the factorial of a number.

Example of Using math Module:

python
import math

 

# Calculate square root

num = 16

print(f”Square root of {num}: {math.sqrt(num)}”)

 

# Calculate sine of 45 degrees (convert degrees to radians)

angle = 45

radians = math.radians(angle)

print(f”Sine of {angle} degrees: {math.sin(radians)}”)

 

# Use pi constant

print(f”Value of Pi: {math.pi}”)

 

3. Using the datetime Module

The datetime module provides classes for manipulating dates and times in both simple and complex ways. It allows you to work with both dates (like 2025-02-01) and times (like 12:30:00), as well as perform operations like calculating the difference between two dates.

Some Common Classes and Functions in datetime:

  • date(year, month, day): Creates a date object.
  • datetime(year, month, day, hour, minute, second): Creates a datetime object.
  • now(): Returns the current date and time.
  • strptime(date_string, format): Converts a string to a datetime object based on a given format.
  • strftime(format): Converts a datetime object to a string based on a given format.

Example of Using datetime Module:

python
import datetime

 

# Get current date and time

now = datetime.datetime.now()

print(f”Current date and time: {now}”)

 

# Create a specific date

birthday = datetime.date(1995, 5, 15)

print(f”Birthday: {birthday}”)

 

# Convert string to date object

date_str = “2025-02-01”

date_obj = datetime.datetime.strptime(date_str, “%Y-%m-%d”)

print(f”Converted date: {date_obj}”)

 

# Format date as string

formatted_date = now.strftime(“%B %d, %Y”)

print(f”Formatted current date: {formatted_date}”)

 

4. Using the os Module

The os module provides a way to interact with the operating system. It allows you to perform tasks like file manipulation, directory navigation, and querying system-related information.

Some Common Functions in os Module:

  • getcwd(): Returns the current working directory.
  • listdir(path): Returns a list of files and directories in the given path.
  • mkdir(path): Creates a new directory at the specified path.
  • remove(path): Removes a file at the specified path.
  • path.exists(path): Checks if the specified file or directory exists.

Example of Using os Module:

python
import os

 

# Get current working directory

current_directory = os.getcwd()

print(f”Current working directory: {current_directory}”)

 

# List files in current directory

files = os.listdir(current_directory)

print(f”Files in the directory: {files}”)

 

# Create a new directory

new_dir = “new_folder”

if not os.path.exists(new_dir):

os.mkdir(new_dir)

print(f”Directory ‘{new_dir}’ created!”)

 

# Remove a file

file_path = “sample.txt”

if os.path.exists(file_path):

os.remove(file_path)

print(f”File ‘{file_path}’ removed!”)

else:

print(f”File ‘{file_path}’ does not exist.”)

 

5. Useful Standard Libraries

Besides the commonly used math, datetime, and os modules, Python provides a variety of other libraries that can be useful in various applications. Here are some of the most widely used ones:

sys: Provides access to system-specific parameters and functions. It can be used to manipulate the runtime environment and handle command-line arguments.

python
import sys

print(sys.argv)  # Print command-line arguments

random: Used for generating random numbers and selecting random items.

python
import random

print(random.randint(1, 100))  # Random integer between 1 and 100

json: Used to work with JSON data (serialization and deserialization).

python
import json

data = {‘name’: ‘John’, ‘age’: 30}

json_string = json.dumps(data)

print(json_string)

re: Provides support for regular expressions (pattern matching).

python
import re

pattern = r”\d+”  # Matches one or more digits

text = “There are 25 apples”

print(re.findall(pattern, text))

collections: Implements specialized container datatypes like deque, Counter, defaultdict, and OrderedDict.

python
from collections import Counter

counter = Counter([‘apple’, ‘banana’, ‘apple’, ‘orange’, ‘banana’, ‘apple’])

print(counter)

time: Provides time-related functions like time measurement and waiting.

python
import time

start = time.time()

time.sleep(2)  # Sleep for 2 seconds

end = time.time()

print(f”Time elapsed: {end – start} seconds”)

6. Conclusion

Python’s standard library is rich with modules that can help you handle a wide range of tasks, from simple mathematical computations to complex file handling and system operations. Understanding how to use these built-in modules can greatly improve your efficiency and reduce the need to write redundant code. Whether you are working with dates, directories, or random number generation, the Python standard library has a solution. In this lesson, we’ve covered just a few of the most commonly used modules, but there are many more available to support almost any programming task you may encounter.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *