
PYTHON Y ODOO
Presentation
•
Computers
•
Professional Development
•
Practice Problem
•
Easy
M.Carmen Sanchez Ruiz
Used 27+ 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
21 questions
Hammeçonnage
Presentation
•
Professional Development
22 questions
EXAMEN 1RA-E INFORMÁTICA II
Presentation
•
Professional Development
24 questions
Sobre CSS
Presentation
•
Professional Development
21 questions
NOBLE
Presentation
•
KG - University
24 questions
La Tecnología de Información
Presentation
•
Professional Development
22 questions
Sesión Sabatino 01
Presentation
•
Professional Development
22 questions
Plurals
Presentation
•
Professional Development
21 questions
Google Drive
Presentation
•
Professional Development
Popular Resources on Wayground
20 questions
Math Review
Quiz
•
3rd Grade
15 questions
Fast food
Quiz
•
7th Grade
20 questions
Context Clues
Quiz
•
6th Grade
20 questions
Inferences
Quiz
•
4th Grade
19 questions
Classifying Quadrilaterals
Quiz
•
3rd Grade
20 questions
Figurative Language Review
Quiz
•
6th Grade
20 questions
Equivalent Fractions
Quiz
•
3rd Grade
10 questions
Identify Fractions, Mixed Numbers & Improper Fractions
Quiz
•
3rd - 4th Grade
Discover more resources for Computers
20 questions
Guess The App
Quiz
•
KG - Professional Dev...
10 questions
Food Quiz
Quiz
•
Professional Development
11 questions
NFL Football logos
Quiz
•
KG - Professional Dev...
19 questions
Minecraft
Quiz
•
6th Grade - Professio...
20 questions
Block Buster Movies
Quiz
•
10th Grade - Professi...
40 questions
Flags of the World
Quiz
•
KG - Professional Dev...
23 questions
super heros
Quiz
•
KG - Professional Dev...
11 questions
SOCCER PLAYERS AND TEAMS
Quiz
•
KG - Professional Dev...