
PYTHON Y ODOO
Presentation
•
Computers
•
Professional Development
•
Practice Problem
•
Easy
M.Carmen Sanchez Ruiz
Used 28+ times
FREE Resource
19 Slides • 9 Questions
1
Introducción a Python
2
Características de Python
• Lenguaje de alto nivel, interpretado y de propósito general.
• Sintaxis simple y legible, enfocada en la legibilidad del código.
3
Variables y Tipos de Datos
• Variables para almacenar información.
• Tipos de datos comunes: int, float, str, list, dict.
4
Estructuras de Control
• if, elif, else: Para toma de decisiones.
• Bucles for y while: Para iterar sobre secuencias o ejecutar un bloque
de código varias veces.
5
Funciones
• Definición de funciones usando def.
• Parámetros y argumentos para pasar datos a las funciones.
• Retorno de valores usando return.
Características y Conceptos Clave
Comprensiones de listas y diccionarios: Permiten crear listas y
diccionarios de manera concisa.
Decoradores:
Permiten
modificar
funciones
ométodos
utilizando otras funciones, permitiendo así una programación
más limpia y legible.
Generadores: Son una forma sencilla de crear iteradores y una
herramienta para la creación de iterables eficientes.
Manejo de excepciones: Uso de try, except, finally para
controlar los errores que pueden ocurrir en tiempo de
ejecución.
Programación orientada a objetos: Python soporta OOP con
clases e herencia.
Módulos y paquetes: Para organizar el código de manera
modular y reutilizable.
6
Funciones Integradas
• print(): Imprime el objeto dado a la salida estándar (la
pantalla por defecto).
• input(): Permite al usuario introducir datos desde la
entrada estándar (por lo general, el teclado).
• len(): Devuelve la longitud (el número de elementos) de
un objeto. Puede ser una lista, una cadena de texto, un
diccionario, etc.
• type(): Devuelve el tipo del objeto especificado.
• range(): Genera una secuencia de números. Se utiliza a
menudo en bucles for.
• int(), float(), str(): Convierten el tipo de dato a entero,
flotante o cadena, respectivamente.
• enumerate(): Añade un contador a un iterable y lo
devuelve en forma de enumerar objeto.
append() para listas: Añade un elemento al final de la lista.
open(): Abre un archivo y devuelve un objeto de archivo
correspondiente.
sum(): Suma los elementos de un iterable desde el inicio
hasta el final.
max() y min(): Devuelven el mayor y el menor valor en un
iterable o entre dos o más argumentos, respectivamente.
sorted(): Devuelve una nueva lista ordenada a partir de los
elementos de un iterable.
map(): Aplica una función dada a cada elemento de un
iterable y devuelve un iterador.
filter(): Construye un iterador a partir de aquellos elementos
de un iterable para los cuales una función devuelve
verdadero.
zip(): Toma iterables (puede ser cero o más), agrega
elementos basados en los iterables pasados y devuelve un
iterador de tuplas.
7
Listas y Diccionarios
• Listas: Colecciones ordenadas y modificables.
• Diccionarios: Colecciones desordenadas de pares clave-valor.
8
Manipulación de Archivos
• Abrir y leer archivos usando open(), read(), readline().
• Escribir en archivos usando write().
9
Módulos y Paquetes
• Importación de módulos con import.
• Uso de paquetes para organizar módulos.
10
Open Ended
Como ya sabemos en Odoo necesitamos phyton para gestionar los módulos y sql para las consultas.
11
Buenas Prácticas
• Nombres de variables claros y descriptivos.
• Comentarios y documentación para explicar el código.
Nombres de Variables Claros y Descriptivos:
# Buen ejemplo
numero_empleados = 5
# Mal ejemplo
n = 5
12
Ejemplo Práctico
• Breve código de ejemplo que demuestra la entrada de datos,
procesamiento y generación de un informe simple.
13
Enlazar
con
ODOO
SAP
PYFFC
14
Vamos a Realizar un Caso Práctico y tres preguntas cortas
15
Open Ended
Objetivo: Crear un script en Python que almacene información sobre estudiantes utilizando una lista y un diccionario, y permita añadir nuevos estudiantes y mostrar la lista completa de estudiantes.
16
Open Ended
Indica las Variables y tipos de datos que existen en Phyton
17
Multiple Choice
Python es un Lenguaje
de alto nivel, interpretado, de propósito general y sintaxis compleja.
de bajo nivel, interpretado y de propósito general.
de alto nivel, interpretado y de propósito general.
Ninguna es Correcta
18
ODDO Y PYTHON CON SQL
Para trabajar con módulos en Python, especialmente en un entorno como Odoo donde tanto Python como SQL son fundamentales, sigues un proceso de dos pasos:
1. Importas los módulos necesarios en Python
2. Utilizas esos módulos para ejecutar consultas SQL u operar sobre la base de datos de Odoo.
19
ODDO Y PYTHON CON SQL
psycopg2 es un adaptador de base de datos PostgreSQL para el lenguaje de programación Python. Es uno de los adaptadores PostgreSQL más populares y se utiliza para conectar programas Python a una base de datos PostgreSQL. psycopg2 permite a los desarrolladores ejecutar operaciones de base de datos como consultas y transacciones desde Python de manera eficiente y segura. Proporciona herramientas para trabajar con datos PostgreSQL, incluyendo soporte para características avanzadas como el manejo de objetos grandes, notificaciones de la base de datos, y más.
Aconsejo ver el siguiente video:
https://www.youtube.com/watch?v=bwYD9gXeh2E&list=PLXwzJRuH--eYHB3OD2wATjzJ83UAp2WQs
20
ODDO Y PYTHON CON SQL
Aquí tienes un ejemplo básico para conectar a una base de datos PostgreSQL llamada "estudiantes" y ejecutar una consulta SQL:
# Conectar a la base de datos
import psycopg2 try:
# Reemplaza con tu usuario
conn = psycopg2.connect( dbname="estudiantes", # Nombre de la base de datos user="tu_usuario",
# Reemplaza con tu contraseña
password="tu_contraseña",
# Host, usualmente localhost para desarrollo local )
# Crear un cursor
host="localhost"
cur = conn.cursor()
# Ejecutar una consulta SQL cur.execute("SELECT * FROM nombre_de_tu_tabla")
# Reemplaza con el nombre de tu tabla
# Obtener y mostrar los resultados rows = cur.fetchall() for row in rows: print(row)
# Cerrar el cursor y la conexión cur.close() conn.close() except psycopg2.Error as e: print(f"Error conectando a la base de datos: {e}")
21
Ahora veremos como un script realiza las siguientes operaciones:
Conecta a la base de datos PostgreSQL llamada "estudiantes".
Crea una tabla estudiantes si no existe, con columnas para id, nombre, y edad.
Inserta un nuevo registro en la tabla.
Selecciona y muestra todos los registros de la tabla estudiantes.
Compromete los cambios y cierra la conexión a la base de datos.
Es importante adaptar los valores de dbname, user, password, y host a tu configuración específica de PostgreSQL.
Veamoslo en la siguiente diapositiva. Ir comprobando los pasos.
22
import psycopg2
# Establecer la conexión a la base de datos
conn = psycopg2.connect(
dbname="estudiantes",
user="usuario",
password="contraseña",
host="localhost"
)
# Crear un cursor
cur = conn.cursor()
# Crear la tabla de estudiantes si no existe
cur.execute("""
CREATE TABLE IF NOT EXISTS estudiantes (
id SERIAL PRIMARY KEY,
nombre VARCHAR(100),
edad INTEGER
)
""")
# Insertar un nuevo estudiante cur.execute("INSERT INTO estudiantes (nombre, edad) VALUES (%s, %s)", ("Ana Pérez", 22)) # Recuperar y mostrar todos los estudiantes cur.execute("SELECT * FROM estudiantes") estudiantes = cur.fetchall() for estudiante in estudiantes: print(estudiante) # Comprometer los cambios y cerrar la conexión conn.commit() cur.close() conn.close()
23
Open Ended
Odoo usando su API. Por ejemplo, para extender un modelo en Odoo, como importarías models desde odoo:
24
Multiple Choice
¿Qué hace la función connect de psycopg2?
Ejecuta una consulta SQL
Conecta Python con una base de datos PostgreSQL
Crea una nueva tabla en la base de datos
Inserta un nuevo registro en la base de datos
25
Multiple Choice
¿Para qué se utiliza el método execute en psycopg2?
Para cerrar la conexión a la base de datos
Para crear un nuevo cursor
Para ejecutar una consulta SQL
Para guardar cambios en la base de datos
26
Multiple Choice
¿Qué método se utiliza para guardar cambios realizados en la base de datos?
save()
commit()
update()
execute()
27
Multiple Choice
Al finalizar operaciones con la base de datos, ¿qué métodos se deben llamar para liberar recursos?
close() y delete()
finish() y commit()
close() y commit()
exit() y save()
28
Espero os haya resultado útil!
Gracias!
Docente: M.Carmen Sánchez Ruiz
DAM. Sistemas de Gestión Empresarial
Introducción a Python
Show answer
Auto Play
Slide 1 / 28
SLIDE
Similar Resources on Wayground
20 questions
One Step Equations
Presentation
•
KG - University
21 questions
PHRASAL VERBS 10
Presentation
•
Professional Development
21 questions
Certificação L2 (3 min)
Presentation
•
Professional Development
19 questions
Evaluación Formativa Función Docente
Presentation
•
Professional Development
22 questions
Vouloir, pouvoir, devoir
Presentation
•
University
22 questions
Irregular Preterite verb rules
Presentation
•
University
25 questions
MIGRACIONES
Presentation
•
Professional Development
22 questions
United Nations
Presentation
•
Professional Development
Popular Resources on Wayground
11 questions
Hallway & Bathroom Expectations
Quiz
•
6th - 8th Grade
10 questions
HCS SCI 03 Summer School Assessment 2
Quiz
•
3rd Grade
11 questions
Home Scope
Quiz
•
7th - 8th Grade
12 questions
2026 TAP Technology in the Classroom
Presentation
•
Professional Development
15 questions
HCS SCI 05 Summer School Assessment 2 Review
Quiz
•
5th Grade
15 questions
HCS SCI 04 Summer School Review 2
Quiz
•
4th Grade
59 questions
Geometry Unit 3 Review
Quiz
•
9th - 12th Grade
14 questions
FAST ELA READING SMAPLE TEST MATERIALS
Passage
•
3rd Grade