<jupyter_start><jupyter_text>Sesión 01: Introducción  **1) Identifica el tipo de dato (int, float, string o list) de los siguientes valores literales**```python"<NAME>"         <- Cadena (String)[1, 10, 100]         <- Lista de enteros (List)-25                  <- Entero negativo (Int) 1.167                <- Flotante (Float)["Hola", "Mundo"]    <- Lista de strings (List)' '        ``` **2) Determina mentalmente (sin programar) el resultado que aparecerá por pantalla a partir de las siguientes variables:**```pythona = 10b = -5c = "Hola "d = [1, 2, 3]``````pythonprint(a * 5)         R: 50print(a - b)         R: 15print(c + "Mundo")   R: "<NAME>" print(c * 2)         R: "<NAME> "print(c[-1])         R: " "print(c[1:])         R: "ola "print(d + d)         R: [1, 2, 3, 1, 2, 3]``` **3) El siguiente código pretende realizar una media entre 3 números, pero no funciona correctamente. ¿Eres capaz de identificar el problema y solucionarlo?**<jupyter_code>numero_1 = 9
numero_2 = 3
numero_3 = 6

media = (numero_1 + numero_2 + numero_3) / 3    # El problema es debido a la jerarquía de operadores ya que primero 
                                                # se ejecuta la división y luego la suma, es por ello que necesita de
                                                # paréntesis.
print("La nota media es", media)<jupyter_output>La nota media es 6.0<jupyter_text>**4) A partir del ejercicio anterior, vamos a suponer que cada número es una nota, y lo que queremos es obtener la nota media. El problema es que cada nota tiene un valor porcentual:*** La primera nota vale un 15% del total* La segunda nota vale un 35% del total* La tercera nota vale un 50% del total**Desarrolla un programa para calcular perfectamente la nota final.**<jupyter_code>nota_1 = 10
nota_2 = 7
nota_3 = 4

# Completa el ejercicio aquí
nota_final = (nota_1 * .15) + (nota_2 * .35) + (nota_3 * .50)

print('La nota final es:', nota_final)<jupyter_output>La nota final es: 5.949999999999999<jupyter_text>**5) La siguiente matriz (o lista con listas anidadas) debe cumplir una condición, y es que en cada fila, el cuarto elemento siempre debe ser el resultado de sumar los tres primeros. ¿Eres capaz de modificar las sumas incorrectas utilizando la técnica del slicing?***Ayuda: La función llamada sum(lista) devuelve una suma de todos los elementos de la lista ¡Pruébalo!*<jupyter_code>matriz = [ 
    [1, 1, 1, 3],
    [2, 2, 2, 7],
    [3, 3, 3, 9],
    [4, 4, 4, 13]
]

matriz = list(map(lambda r: r[:3] + [ sum(r[:3]) ], matriz))

print('Matriz final:')

for row in matriz:
    print(row)<jupyter_output>Matriz final:
[1, 1, 1, 3]
[2, 2, 2, 6]
[3, 3, 3, 9]
[4, 4, 4, 12]<jupyter_text>**6) Al realizar una consulta en un registro hemos obtenido una cadena de texto corrupta al revés. Al parecer contiene el nombre de un alumno y la nota de un exámen. ¿Cómo podríamos formatear la cadena y conseguir una estructura como la siguiente?:*** ***Nombre*** ***Apellido*** ha sacado un ***Nota*** de nota.*Ayuda: Para voltear una cadena rápidamente utilizando slicing podemos utilizar un tercer índice -1: **cadena[::-1]** *<jupyter_code>cadena = "zeréP nauJ,01"

# Completa el ejercicio aquí
exam_score, full_name  = cadena[::-1].split(',')
print("{} ha sacado un {} de nota.".format(full_name, exam_score))<jupyter_output><NAME> ha sacado un 10 de nota.
{'fraction_non_alphanumeric': 0.12301706076025141, 'fraction_numerical': 0.04010775217000898, 'mean_word_length': 3.4206349206349205, 'pattern_counts': {'":': 0, '<': 22, '<?xml version=': 0, '>': 17, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 1, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '257203', 'license': 'MIT', 'n_tokens_mistral': 1308, 'n_tokens_neox': 1210, 'n_words': 439, 'path': 'Sesion 01 - Introduccion/Ejercicios/Enunciados.ipynb', 'repo_name': 'mikebsg01/Python-Workshop', 'size': '3356'}