La biblioteca estàndard de Python és una col·lecció extensa de mòduls i paquets que proporcionen funcionalitats addicionals per a tasques comunes de programació. Aquesta biblioteca és una de les raons per les quals Python és tan popular, ja que permet als desenvolupadors escriure codi més eficient i amb menys esforç.

Objectius d'aquest Tema

  • Entendre què és la biblioteca estàndard de Python.
  • Aprendre a utilitzar alguns dels mòduls més comuns.
  • Veure exemples pràctics de com aquests mòduls poden simplificar el desenvolupament.

Continguts

  1. Què és la Biblioteca Estàndard?
  2. Mòduls Comuns
    • os
    • sys
    • math
    • datetime
    • random
    • json
  3. Exemples Pràctics
  4. Exercicis Pràctics

  1. Què és la Biblioteca Estàndard?

La biblioteca estàndard de Python és un conjunt de mòduls que venen inclosos amb la instal·lació de Python. Aquests mòduls cobreixen una àmplia gamma de funcionalitats, des de la manipulació de fitxers fins a la comunicació en xarxa, passant per la gestió de dates i hores, i molt més.

  1. Mòduls Comuns

os

El mòdul os proporciona una manera de treballar amb el sistema operatiu. Permet realitzar operacions com la manipulació de fitxers i directoris, així com l'execució de comandes del sistema.

import os

# Obtenir el directori de treball actual
current_directory = os.getcwd()
print(f"Directori actual: {current_directory}")

# Llistar els fitxers en un directori
files = os.listdir(current_directory)
print(f"Fitxers en el directori actual: {files}")

sys

El mòdul sys proporciona accés a algunes variables utilitzades o mantenides per l'intèrpret de Python i a funcions que interactuen fortament amb l'intèrpret.

import sys

# Obtenir la versió de Python
print(f"Versió de Python: {sys.version}")

# Sortir del programa
# sys.exit()

math

El mòdul math proporciona funcions matemàtiques bàsiques com arrels quadrades, potències, logaritmes, etc.

import math

# Arrel quadrada
print(f"Arrel quadrada de 16: {math.sqrt(16)}")

# Valor de pi
print(f"Valor de pi: {math.pi}")

datetime

El mòdul datetime proporciona classes per manipular dates i hores.

from datetime import datetime

# Obtenir la data i hora actuals
now = datetime.now()
print(f"Data i hora actuals: {now}")

# Format de data
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print(f"Data formatada: {formatted_date}")

random

El mòdul random proporciona funcions per generar números aleatoris.

import random

# Generar un número aleatori entre 1 i 10
random_number = random.randint(1, 10)
print(f"Número aleatori entre 1 i 10: {random_number}")

# Triar un element aleatori d'una llista
elements = ['poma', 'plàtan', 'cirera']
random_element = random.choice(elements)
print(f"Element aleatori: {random_element}")

json

El mòdul json permet treballar amb dades en format JSON (JavaScript Object Notation).

import json

# Convertir un diccionari a una cadena JSON
data = {'nom': 'Joan', 'edat': 30}
json_data = json.dumps(data)
print(f"Dades en format JSON: {json_data}")

# Convertir una cadena JSON a un diccionari
parsed_data = json.loads(json_data)
print(f"Dades parsejades: {parsed_data}")

  1. Exemples Pràctics

Exemple 1: Llistat de Fitxers en un Directori

import os

def list_files(directory):
    try:
        files = os.listdir(directory)
        return files
    except FileNotFoundError:
        return f"El directori {directory} no existeix."

directory = "."
print(f"Fitxers en el directori {directory}: {list_files(directory)}")

Exemple 2: Generació d'una Data Formatada

from datetime import datetime

def get_formatted_date():
    now = datetime.now()
    return now.strftime("%Y-%m-%d %H:%M:%S")

print(f"Data i hora actuals: {get_formatted_date()}")

  1. Exercicis Pràctics

Exercici 1: Llistat de Fitxers

Escriu una funció que llisti tots els fitxers en un directori donat i imprimeixi només els fitxers amb una extensió específica (per exemple, .txt).

Exercici 2: Generació de Números Aleatoris

Escriu una funció que generi una llista de 10 números aleatoris entre 1 i 100 i retorni la llista ordenada.

Exercici 3: Manipulació de JSON

Escriu una funció que prengui un diccionari Python, el converteixi a una cadena JSON i després el torni a convertir a un diccionari Python.

Solucions

Solució Exercici 1

import os

def list_txt_files(directory):
    try:
        files = os.listdir(directory)
        txt_files = [file for file in files if file.endswith('.txt')]
        return txt_files
    except FileNotFoundError:
        return f"El directori {directory} no existeix."

directory = "."
print(f"Fitxers .txt en el directori {directory}: {list_txt_files(directory)}")

Solució Exercici 2

import random

def generate_sorted_random_numbers():
    random_numbers = [random.randint(1, 100) for _ in range(10)]
    random_numbers.sort()
    return random_numbers

print(f"Números aleatoris ordenats: {generate_sorted_random_numbers()}")

Solució Exercici 3

import json

def manipulate_json(data):
    json_data = json.dumps(data)
    parsed_data = json.loads(json_data)
    return parsed_data

data = {'nom': 'Joan', 'edat': 30}
print(f"Dades manipulades: {manipulate_json(data)}")

Conclusió

La biblioteca estàndard de Python és una eina poderosa que pot simplificar moltes tasques de programació. En aquest tema, hem explorat alguns dels mòduls més comuns i hem vist com utilitzar-los en exemples pràctics. Amb aquesta base, estaràs preparat per explorar més mòduls de la biblioteca estàndard i aplicar-los als teus projectes.

Curs de Programació en Python

Mòdul 1: Introducció a Python

Mòdul 2: Estructures de Control

Mòdul 3: Funcions i Mòduls

Mòdul 4: Estructures de Dades

Mòdul 5: Programació Orientada a Objectes

Mòdul 6: Gestió de Fitxers

Mòdul 7: Gestió d'Errors i Excepcions

Mòdul 8: Temes Avançats

Mòdul 9: Proves i Depuració

Mòdul 10: Desenvolupament Web amb Python

Mòdul 11: Ciència de Dades amb Python

Mòdul 12: Projecte Final

© Copyright 2024. Tots els drets reservats