SlideShare una empresa de Scribd logo
1 de 25
Aprendiendo a Programar en
… con mi computadora y todo lo que
encuentre disponible.
Ejercicios
parte 4.
for i in range(cant_digitos):
candidato = random.choice(digitos)
# eligiendo dígitos no repetidos
while candidato in codigo:
candidato = random.choice(digitos)
codigo = codigo + candidato
¿Qué hora es? ¡Hora de jugar!
# interacción con el usuario
print "Bienvenido a mente maestra"
print “Debe adivinar un número de",
cant_digitos, 
"cifras distintas"
propuesta =
raw_input("Que código propones?: ")
# procesando propuestas e indicando aciertos
# y coincidencias
intentos = 1
¿Qué hora es? ¡Hora de jugar!
while propuesta != codigo and propuesta !=
"Me doy":
intentos = intentos + 1
aciertos = 0
coincidencias = 0
# recorre propuesta y verifica en el código
for i in range(cant_digitos):
if propuesta[i] == codigo[i]:
aciertos = aciertos + 1
elif propuesta[i] in codigo:
coincidencias = coincidencias + 1
¿Qué hora es? ¡Hora de jugar!
print "Tu propuesta (", propuesta, ") tiene",
aciertos, 
"aciertos y ", coincidencias, "coincidencias."
# pedimos siguiente propuesta
propuesta =
raw_input("Propone otro codigo: ")
if propuesta == "Me doy":
print "El código era", codigo
print "Suerte la próxima vez!"
else:
print "Felicidades! Adivinaste el código en", 
intentos, "intentos."
¿Qué hora es? ¡Hora de jugar!
Listas.
Se usan listas para poder modelar datos
compuestos pero cuya cantidad y valor
varían a lo largo del tiempo.
Son secuencias mutables y vienen
dotadas de una variedad de operaciones
muy útiles.
La notación para lista es una secuencia de
valores encerrados entre corchetes y
separados por comas.
 A las listas también se les puede aplicar la
función len() para conocer su longitud.
 Para acceder a los distintos elementos de la
lista se utilizará la misma notación de
índices de cadenas y tuplas, con valores
que van de 0 a la longitud de la lista -1.
>>> xs=[78455, 89211, 66540, 45750]
>>> xs[0]
78455
>>> len(xs)
4
Listas.
>>> xs[4]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
>>> xs[3]
45750
Listas.
Para una sublista a partir de la original, se
utiliza la notación de rangos.
 Para una lista que contiene sólo el segundo
registro escriba: >>> xs[1:2]
 [89211]
 Para el segundo y tercer registro escriba:
>>> xs[1:3]
 [89211, 66540]
 Para la lista que contiene al primero y
segundo registro escriba: >>> xs[:2]
 [78455, 89211]
Listas.
 Para cambiar un componente de una lista, se
selecciona el componente mediante su índice
y se le asigna el nuevo valor:
 >>> xs[1]=79211
 >>> xs
 [78455, 79211, 66540, 45750]
 Para agregar un nuevo valor al final de la
lista se utiliza la operación append().
 >>> xs.append(47890)
#agregar el valor 47890 al final de xs.
 >>> xs
 [78455, 79211, 66540, 45750, 47890]
 >>>
Listas.
 Insertar un nuevo valor en la posición del
índice k (y desplazar un lugar el resto de la
lista) necesita la operación insert().
 >>> xs.insert(2, 54988)
#para insertar 54988 en la tercera
#posición
 >>> xs
 [78455, 79211, 54988, 66540, 45750,
47890]
Listas.
 Las listas no controlan si se insertan
elementos repetidos, para exigir unicidad,
debe hacerlo mediante código.
 >>> xs.insert(1,78455)
 >>> xs
 [78455, 78455, 79211, 54988, 66540,
45750, 47890]
Listas.
 Eliminar un valor de una lista necesita la
operación remove().
 >>> xs.remove(45750)
#para borrar el 45750 de la lista
 >>> xs
 [78455, 78455, 79211, 54988, 66540,
47890]
 Si el valor a borrar está repetido, se borra
sólo su primera aparición:
 >>> xs.remove(78455)
 >>> xs
 [78455, 79211, 54988, 66540, 47890]
Listas.
 Preguntar si un valor determinado es un
elemento de una lista necesita la operación
in:
 >>> xs
 [78455, 79211, 54988, 66540, 47890]
 >>> 78 in xs
 False
 >>> 66540 in xs
 True
 >>>
 Ésto puede usarse para todas las
secuencias, incluyendo tuplas y cadenas.
Listas.
 Averiguar la posición de un valor dentro de
una lista usa la operación index().
 >>> xs.index(78455)
 0
 >>> xs.index(47890)
 4
 Si no se encuentra, se produce un error:
 >>> xs.index(78)
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 ValueError: list.index(x): x not in list
Listas.
 Si el valor está repetido, el índice devuelto
es el de la primera aparición:
 >>> ys=[10,20,10]
 >>> ys.index(10)
 0
Listas.
 Para iterar sobre todos los elementos de
una lista use un ciclo for:
>>> zs = [5, 3, 8, 10, 2]
>>> for x in zs:
print x
5
3
8
10
2
Ésto se puede utilizar sobre cualquier
secuencia, incluyendo tuplas y cadenas.
Listas.
Las listas, tuplas y cadenas son parte del
conjunto de las secuencias y cuentan con
las operaciones siguientes:
Listas.
Operaciones de las secuencias:
 x in s Indica si la variable x se encuentra en s
 s + t Concantena s con t.
 s * n Concatena n copias de s.
 s[i] Elemento i de s, empezando por 0.
 s[i:j] Porción de la secuencia s desde i hasta j
(no inclusive).
 s[i:j:k] Porción de la secuencia s desde i hasta j
(no inclusive), con paso k.
 len(s) Cantidad de elementos de la secuencia
s.
 min(s) Mínimo elemento de la secuencia s.
 max(s) Máximo elemento de la secuencia s.
Listas.
Armar la lista de los inscritos en una
materia:
1. El usuario ingresa datos de estudiantes
que se van guardando en una lista.
2. El programa solicitará al usuario que
ingrese uno a uno los listados de los
inscritos. Con esos registros construirá
una lista, que al final se mostrará.
Listas.
#!/usr/bin/env python
# encoding: latin1
""" Módulo para inscribir alumnos al curso """
# Inicia la interacción con el usuario
print "Inscripción en el curso IA"
# Se lee el primer listado
listado=input("Ingresa un listado (<=0 para
terminar): ")
# Procesando los listado
# Inicialmente no hay inscritos
Listas.
ins = []
while listado > 0:
# Agrega el listado leído a la lista de
inscritos
ins.append(listado)
# Lee otro listado más
listado=input("Ingresá un listado (<=0 para
terminar): ")
# Muestra el resultado
print "Esta es la lista de inscritos: ", ins
Listas.
#!/usr/bin/env python
# encoding: latin1
""" Módulo para inscribir al curso IA """
# Inicia la interacción con el usuario
print "Inscripción en el curso IA"
# Lee el primer listado
listado=input
("Ingresa un listado (<=0 para terminar): ")
# Procesa los listados
# Inicialmente no hay inscritos
Listas.
ins = []
while listado > 0:
# Si no está, agrega a la lista de inscritos,
if listado not in ins:
ins.append(listado)
# de lo contrario avisa que ya existe
else:
print "Ya existe en la lista"
# Lee otro listado más
listado=input("Ingresá un listado (<=0 para
terminar): ")
# Muestra el resultado
print "Esta es la lista de inscritos: ", ins
Listas.
Ejercicios:
1. Permitir que los alumnos se puedan
inscribir o borrar.
2. Inscribir y borrar alumnos como antes,
pero registrar también el nombre y
apellido de la persona inscrita.
Listas.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Clase 6
Clase 6Clase 6
Clase 6
 
Arreglos en C
Arreglos en CArreglos en C
Arreglos en C
 
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
 
10 programas de if
10 programas de if10 programas de if
10 programas de if
 
Clase 9- programacion
Clase 9- programacionClase 9- programacion
Clase 9- programacion
 
Arreglos, Procedimientos y Funciones
Arreglos, Procedimientos y FuncionesArreglos, Procedimientos y Funciones
Arreglos, Procedimientos y Funciones
 
01 el lenguaje Python
01 el lenguaje Python01 el lenguaje Python
01 el lenguaje Python
 
Ejercicios tema1
Ejercicios tema1Ejercicios tema1
Ejercicios tema1
 
Descubriendo scala
Descubriendo scalaDescubriendo scala
Descubriendo scala
 
Apuntadores y direccionamiento
Apuntadores y direccionamientoApuntadores y direccionamiento
Apuntadores y direccionamiento
 
Arreglos
ArreglosArreglos
Arreglos
 
Ejercicios con bucles repetitivos
Ejercicios con bucles repetitivosEjercicios con bucles repetitivos
Ejercicios con bucles repetitivos
 
Switch case (informe_19)
Switch case (informe_19)Switch case (informe_19)
Switch case (informe_19)
 
Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++
 
dqwrwer
dqwrwerdqwrwer
dqwrwer
 
Tipo de dato DOUBLE
Tipo de dato DOUBLETipo de dato DOUBLE
Tipo de dato DOUBLE
 
Programa en java con el Metodo de la burbuja
Programa en java con el Metodo de la burbujaPrograma en java con el Metodo de la burbuja
Programa en java con el Metodo de la burbuja
 
0.1 Enbarcadero I
0.1 Enbarcadero I0.1 Enbarcadero I
0.1 Enbarcadero I
 
Aplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesAplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionales
 
Ejercicios Whule y Do While
Ejercicios Whule y Do WhileEjercicios Whule y Do While
Ejercicios Whule y Do While
 

Similar a Ejercicios Python parte 4

Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdfSesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdfMarxx4
 
9. listas y for-in
9.  listas y for-in9.  listas y for-in
9. listas y for-inFaby Ignacio
 
Temas programacion java_2
Temas programacion java_2Temas programacion java_2
Temas programacion java_2Wally IG
 
Taller listasyeasygui
Taller listasyeasyguiTaller listasyeasygui
Taller listasyeasyguiAlbert Page
 
Programacion en python_1
Programacion en python_1Programacion en python_1
Programacion en python_1wozgeass
 
Bryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglosBryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglosBryan Gordillo
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacionSneydert Jhenz
 
Metodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosMetodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosWilliam Diaz S
 
Introducción a la programación en Python
Introducción a la programación en PythonIntroducción a la programación en Python
Introducción a la programación en PythonCodeSyntax
 

Similar a Ejercicios Python parte 4 (20)

Django y Python para todos
Django y Python para todosDjango y Python para todos
Django y Python para todos
 
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdfSesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
 
Python04
Python04Python04
Python04
 
Python para principiantes
Python para principiantesPython para principiantes
Python para principiantes
 
9. listas y for-in
9.  listas y for-in9.  listas y for-in
9. listas y for-in
 
02 introduccion a python
02 introduccion a python02 introduccion a python
02 introduccion a python
 
Python
Python Python
Python
 
9_U2_S3_Cadenas.pdf
9_U2_S3_Cadenas.pdf9_U2_S3_Cadenas.pdf
9_U2_S3_Cadenas.pdf
 
Temas programacion java_2
Temas programacion java_2Temas programacion java_2
Temas programacion java_2
 
Taller listasyeasygui
Taller listasyeasyguiTaller listasyeasygui
Taller listasyeasygui
 
Programacion en python_1
Programacion en python_1Programacion en python_1
Programacion en python_1
 
arrays
arraysarrays
arrays
 
Bryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglosBryan gordillo ensayo_arreglos
Bryan gordillo ensayo_arreglos
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Vba y objetos excel
Vba y objetos excelVba y objetos excel
Vba y objetos excel
 
Metodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosMetodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a Objetos
 
Ejercicios resueltos con Python
Ejercicios resueltos con PythonEjercicios resueltos con Python
Ejercicios resueltos con Python
 
Introducción a la programación en Python
Introducción a la programación en PythonIntroducción a la programación en Python
Introducción a la programación en Python
 
P3si
P3siP3si
P3si
 
12637788.ppt
12637788.ppt12637788.ppt
12637788.ppt
 

Más de Facultad de Ciencias y Sistemas

Introducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaIntroducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaFacultad de Ciencias y Sistemas
 

Más de Facultad de Ciencias y Sistemas (20)

Ejercicios HTML 5
Ejercicios HTML 5Ejercicios HTML 5
Ejercicios HTML 5
 
CSS3
CSS3CSS3
CSS3
 
09 ordenamiento-en-vectores-en-c
09 ordenamiento-en-vectores-en-c09 ordenamiento-en-vectores-en-c
09 ordenamiento-en-vectores-en-c
 
08 mas-de-vectores-en-c
08 mas-de-vectores-en-c08 mas-de-vectores-en-c
08 mas-de-vectores-en-c
 
07 vectores-en-c final
07 vectores-en-c final07 vectores-en-c final
07 vectores-en-c final
 
06 clases-en-c
06 clases-en-c06 clases-en-c
06 clases-en-c
 
05 cadenas-de-caracteres-en-c
05 cadenas-de-caracteres-en-c05 cadenas-de-caracteres-en-c
05 cadenas-de-caracteres-en-c
 
04 mas-estructuras-iterativas-en-c
04 mas-estructuras-iterativas-en-c04 mas-estructuras-iterativas-en-c
04 mas-estructuras-iterativas-en-c
 
03 estructuras-iterativas-en-c
03 estructuras-iterativas-en-c03 estructuras-iterativas-en-c
03 estructuras-iterativas-en-c
 
02 mas-de-las-estructuras-de-programacion-en-c
02 mas-de-las-estructuras-de-programacion-en-c02 mas-de-las-estructuras-de-programacion-en-c
02 mas-de-las-estructuras-de-programacion-en-c
 
01 estructuras-de-programacion-en-c
01 estructuras-de-programacion-en-c01 estructuras-de-programacion-en-c
01 estructuras-de-programacion-en-c
 
Procesamiento del lenguaje natural con python
Procesamiento del lenguaje natural con pythonProcesamiento del lenguaje natural con python
Procesamiento del lenguaje natural con python
 
Actividades de aprendizaje en Moodle
Actividades de aprendizaje en MoodleActividades de aprendizaje en Moodle
Actividades de aprendizaje en Moodle
 
Creación de grupos en Moodle
Creación de grupos en MoodleCreación de grupos en Moodle
Creación de grupos en Moodle
 
Introducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con JavaIntroducción a la progrogramación orientada a objetos con Java
Introducción a la progrogramación orientada a objetos con Java
 
Como crear un diagrama de clases
Como crear un diagrama de clasesComo crear un diagrama de clases
Como crear un diagrama de clases
 
Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02
 
Diagrama de clases - Ejemplo monográfico 01
Diagrama de clases - Ejemplo monográfico 01Diagrama de clases - Ejemplo monográfico 01
Diagrama de clases - Ejemplo monográfico 01
 
Otro ejemplo de diagrama de clases UML
Otro ejemplo de diagrama de clases UMLOtro ejemplo de diagrama de clases UML
Otro ejemplo de diagrama de clases UML
 
Un ejemplo de diagrama de clases
Un ejemplo de diagrama de clasesUn ejemplo de diagrama de clases
Un ejemplo de diagrama de clases
 

Último

Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfMARIAPAULAMAHECHAMOR
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 

Último (20)

Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 

Ejercicios Python parte 4

  • 1. Aprendiendo a Programar en … con mi computadora y todo lo que encuentre disponible. Ejercicios parte 4.
  • 2. for i in range(cant_digitos): candidato = random.choice(digitos) # eligiendo dígitos no repetidos while candidato in codigo: candidato = random.choice(digitos) codigo = codigo + candidato ¿Qué hora es? ¡Hora de jugar!
  • 3. # interacción con el usuario print "Bienvenido a mente maestra" print “Debe adivinar un número de", cant_digitos, "cifras distintas" propuesta = raw_input("Que código propones?: ") # procesando propuestas e indicando aciertos # y coincidencias intentos = 1 ¿Qué hora es? ¡Hora de jugar!
  • 4. while propuesta != codigo and propuesta != "Me doy": intentos = intentos + 1 aciertos = 0 coincidencias = 0 # recorre propuesta y verifica en el código for i in range(cant_digitos): if propuesta[i] == codigo[i]: aciertos = aciertos + 1 elif propuesta[i] in codigo: coincidencias = coincidencias + 1 ¿Qué hora es? ¡Hora de jugar!
  • 5. print "Tu propuesta (", propuesta, ") tiene", aciertos, "aciertos y ", coincidencias, "coincidencias." # pedimos siguiente propuesta propuesta = raw_input("Propone otro codigo: ") if propuesta == "Me doy": print "El código era", codigo print "Suerte la próxima vez!" else: print "Felicidades! Adivinaste el código en", intentos, "intentos." ¿Qué hora es? ¡Hora de jugar!
  • 6. Listas. Se usan listas para poder modelar datos compuestos pero cuya cantidad y valor varían a lo largo del tiempo. Son secuencias mutables y vienen dotadas de una variedad de operaciones muy útiles. La notación para lista es una secuencia de valores encerrados entre corchetes y separados por comas.
  • 7.  A las listas también se les puede aplicar la función len() para conocer su longitud.  Para acceder a los distintos elementos de la lista se utilizará la misma notación de índices de cadenas y tuplas, con valores que van de 0 a la longitud de la lista -1. >>> xs=[78455, 89211, 66540, 45750] >>> xs[0] 78455 >>> len(xs) 4 Listas.
  • 8. >>> xs[4] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list index out of range >>> xs[3] 45750 Listas.
  • 9. Para una sublista a partir de la original, se utiliza la notación de rangos.  Para una lista que contiene sólo el segundo registro escriba: >>> xs[1:2]  [89211]  Para el segundo y tercer registro escriba: >>> xs[1:3]  [89211, 66540]  Para la lista que contiene al primero y segundo registro escriba: >>> xs[:2]  [78455, 89211] Listas.
  • 10.  Para cambiar un componente de una lista, se selecciona el componente mediante su índice y se le asigna el nuevo valor:  >>> xs[1]=79211  >>> xs  [78455, 79211, 66540, 45750]  Para agregar un nuevo valor al final de la lista se utiliza la operación append().  >>> xs.append(47890) #agregar el valor 47890 al final de xs.  >>> xs  [78455, 79211, 66540, 45750, 47890]  >>> Listas.
  • 11.  Insertar un nuevo valor en la posición del índice k (y desplazar un lugar el resto de la lista) necesita la operación insert().  >>> xs.insert(2, 54988) #para insertar 54988 en la tercera #posición  >>> xs  [78455, 79211, 54988, 66540, 45750, 47890] Listas.
  • 12.  Las listas no controlan si se insertan elementos repetidos, para exigir unicidad, debe hacerlo mediante código.  >>> xs.insert(1,78455)  >>> xs  [78455, 78455, 79211, 54988, 66540, 45750, 47890] Listas.
  • 13.  Eliminar un valor de una lista necesita la operación remove().  >>> xs.remove(45750) #para borrar el 45750 de la lista  >>> xs  [78455, 78455, 79211, 54988, 66540, 47890]  Si el valor a borrar está repetido, se borra sólo su primera aparición:  >>> xs.remove(78455)  >>> xs  [78455, 79211, 54988, 66540, 47890] Listas.
  • 14.  Preguntar si un valor determinado es un elemento de una lista necesita la operación in:  >>> xs  [78455, 79211, 54988, 66540, 47890]  >>> 78 in xs  False  >>> 66540 in xs  True  >>>  Ésto puede usarse para todas las secuencias, incluyendo tuplas y cadenas. Listas.
  • 15.  Averiguar la posición de un valor dentro de una lista usa la operación index().  >>> xs.index(78455)  0  >>> xs.index(47890)  4  Si no se encuentra, se produce un error:  >>> xs.index(78)  Traceback (most recent call last):  File "<stdin>", line 1, in <module>  ValueError: list.index(x): x not in list Listas.
  • 16.  Si el valor está repetido, el índice devuelto es el de la primera aparición:  >>> ys=[10,20,10]  >>> ys.index(10)  0 Listas.
  • 17.  Para iterar sobre todos los elementos de una lista use un ciclo for: >>> zs = [5, 3, 8, 10, 2] >>> for x in zs: print x 5 3 8 10 2 Ésto se puede utilizar sobre cualquier secuencia, incluyendo tuplas y cadenas. Listas.
  • 18. Las listas, tuplas y cadenas son parte del conjunto de las secuencias y cuentan con las operaciones siguientes: Listas.
  • 19. Operaciones de las secuencias:  x in s Indica si la variable x se encuentra en s  s + t Concantena s con t.  s * n Concatena n copias de s.  s[i] Elemento i de s, empezando por 0.  s[i:j] Porción de la secuencia s desde i hasta j (no inclusive).  s[i:j:k] Porción de la secuencia s desde i hasta j (no inclusive), con paso k.  len(s) Cantidad de elementos de la secuencia s.  min(s) Mínimo elemento de la secuencia s.  max(s) Máximo elemento de la secuencia s. Listas.
  • 20. Armar la lista de los inscritos en una materia: 1. El usuario ingresa datos de estudiantes que se van guardando en una lista. 2. El programa solicitará al usuario que ingrese uno a uno los listados de los inscritos. Con esos registros construirá una lista, que al final se mostrará. Listas.
  • 21. #!/usr/bin/env python # encoding: latin1 """ Módulo para inscribir alumnos al curso """ # Inicia la interacción con el usuario print "Inscripción en el curso IA" # Se lee el primer listado listado=input("Ingresa un listado (<=0 para terminar): ") # Procesando los listado # Inicialmente no hay inscritos Listas.
  • 22. ins = [] while listado > 0: # Agrega el listado leído a la lista de inscritos ins.append(listado) # Lee otro listado más listado=input("Ingresá un listado (<=0 para terminar): ") # Muestra el resultado print "Esta es la lista de inscritos: ", ins Listas.
  • 23. #!/usr/bin/env python # encoding: latin1 """ Módulo para inscribir al curso IA """ # Inicia la interacción con el usuario print "Inscripción en el curso IA" # Lee el primer listado listado=input ("Ingresa un listado (<=0 para terminar): ") # Procesa los listados # Inicialmente no hay inscritos Listas.
  • 24. ins = [] while listado > 0: # Si no está, agrega a la lista de inscritos, if listado not in ins: ins.append(listado) # de lo contrario avisa que ya existe else: print "Ya existe en la lista" # Lee otro listado más listado=input("Ingresá un listado (<=0 para terminar): ") # Muestra el resultado print "Esta es la lista de inscritos: ", ins Listas.
  • 25. Ejercicios: 1. Permitir que los alumnos se puedan inscribir o borrar. 2. Inscribir y borrar alumnos como antes, pero registrar también el nombre y apellido de la persona inscrita. Listas.