|
8 | 8 |
|
9 | 9 | #import fletcher.shapes: diamond, ellipse |
10 | 10 | #import "template.typ": ( |
11 | | - code-annotation, |
12 | 11 | inverted-slide, |
| 12 | + new-section-slide, |
| 13 | + setup-template, |
| 14 | +) |
| 15 | + |
| 16 | +#import "utils.typ": ( |
| 17 | + code-annotation, |
13 | 18 | item-by-item, |
14 | 19 | later, |
15 | | - new-section-slide, |
16 | 20 | reveal-code, |
17 | | - setup-template, |
18 | 21 | ) |
19 | 22 |
|
20 | 23 |
|
|
30 | 33 | ) |
31 | 34 |
|
32 | 35 | #show: setup-template.with( |
33 | | - title: [Conociendo Python], |
34 | | - subtitle: [Tomás Capretto \ \ Marzo 2026], |
35 | | - course-name: "Programación en Python", |
36 | | - title-header: "Clase 1" |
| 36 | + title: [Programación en Python], |
| 37 | + subtitle: [Clase 1: Conociendo Python], |
| 38 | + date: [18/03/2026], |
| 39 | + header-label: [Clase 1], |
| 40 | + footer-label: [Conociendo Python], |
37 | 41 | ) |
38 | 42 |
|
39 | 43 | #new-section-slide[Qué es Python] |
|
53 | 57 | ] |
54 | 58 | ][ |
55 | 59 | #set align(center) |
56 | | - #image("python-logo.png", width:60%) |
| 60 | + #image("imgs/python-logo.png", width:60%) |
57 | 61 | ] |
58 | 62 | ] |
59 | 63 |
|
|
76 | 80 | ] |
77 | 81 | ][ |
78 | 82 | #set align(center) |
79 | | - #image("positron-icon.svg", width:60%) |
| 83 | + #image("imgs/positron-icon.svg", width:60%) |
80 | 84 | ] |
81 | 85 | ] |
82 | 86 |
|
|
198 | 202 | #slide[ |
199 | 203 | = Nombres permitidos |
200 | 204 |
|
201 | | - #set text(size: 0.92em) |
| 205 | + #item-by-item[ |
| 206 | + - Solo pueden contener *letras*, *números* y *guiones bajos* |
| 207 | + - Deben comenzar con letra o guión bajo, pero no con un número. |
| 208 | + - `mensaje_1` ✅ |
| 209 | + - `1_mensaje` ❌ |
| 210 | + - No pueden contener espacios |
| 211 | + - `el_mensaje` ✅ |
| 212 | + - `el mensaje` ❌ |
| 213 | + - No pueden ser palabras reservadas de Python |
| 214 | + ] |
202 | 215 |
|
203 | | - - Solo pueden contener *letras*, *números* y *guiones bajos* |
204 | | - - Deben comenzar con letra o guión bajo, pero no con un número. |
205 | | - - `mensaje_1` ✅ |
206 | | - - `1_mensaje` ❌ |
207 | | - - No pueden contener espacios |
208 | | - - `el_mensaje` vs `el mensaje` |
209 | | - - No pueden ser palabras reservadas de Python |
| 216 | +] |
210 | 217 |
|
211 | | - #show: later |
| 218 | +#slide[ |
| 219 | + = Nombres permitidos |
| 220 | + |
| 221 | + #set align(horizon) |
212 | 222 |
|
213 | 223 | #info(title: "Consejos")[ |
214 | | - - Usar nombres breves pero descriptivos |
215 | | - - `mensaje` mejor que `mj` |
216 | | - - `equipo_favorito` mejor que `eq_fav` |
217 | | - - No usar tildes ni caracteres específicos del castellano (`ñ`). |
| 224 | + - Usar nombres breves pero descriptivos |
| 225 | + - `mensaje` mejor que `mj` |
| 226 | + - `equipo_favorito` mejor que `eq_fav` |
| 227 | + - No usar tildes ni caracteres específicos del castellano (`ñ`). |
218 | 228 | ] |
219 | 229 |
|
220 | 230 | ] |
221 | 231 |
|
| 232 | + |
222 | 233 | #new-section-slide[Expresiones] |
223 | 234 |
|
224 | 235 | #slide[ |
225 | 236 | = Expresiones |
226 | 237 |
|
| 238 | + #set align(horizon) |
| 239 | + |
227 | 240 | #memo(title: "¿Qué es una expresión?")[ |
228 | 241 | Una expresión es una combinación de *operadores* y *operandos* que se puede evaluar para producir un valor. |
229 | 242 | ] |
|
439 | 452 | #uncover("4-")[ |
440 | 453 | #v(5em) |
441 | 454 | #set align(center) |
442 | | - Nada que ustedes no supieran ya #emoji.face.wink |
| 455 | + Nada que ustedes no supieran ya #emoji.face.wink |
443 | 456 | ] |
444 | 457 |
|
445 | 458 | ] |
|
460 | 473 |
|
461 | 474 |
|
462 | 475 | ```python |
463 | | - pin1defpin2 pin3funpin4(pin5x, y, zpin6)pin7:pin8 |
464 | | - pin9# <cuerpo de la función>pin10 |
| 476 | + pin1defpin2 pin3sumapin4(pin5x, y, zpin6)pin7:pin8 |
| 477 | + pin9valor = x + y + zpin10 |
465 | 478 | pin11returnpin12 pin13valorpin14 |
466 | 479 | ``` |
467 | 480 |
|
|
978 | 991 | ] |
979 | 992 | ] |
980 | 993 |
|
| 994 | +#slide[ |
| 995 | + = Ejecución condicional |
| 996 | + |
| 997 | + #set text(size: 1.02em) |
| 998 | + |
| 999 | + #item-by-item[ |
| 1000 | + - Realizar diferentes acciones según qué se responde a cada pregunta |
| 1001 | + - Preguntas #sym.arrow Condiciones |
| 1002 | + - Posible gracias a las siguientes *estructuras de control*: |
| 1003 | + - `if` |
| 1004 | + - `if`-`else` |
| 1005 | + - `if`-`elif`-`else` |
| 1006 | + ] |
| 1007 | +] |
| 1008 | + |
981 | 1009 | #slide[ |
982 | 1010 | = Partes de estructura `if` |
983 | 1011 |
|
|
1016 | 1044 | #pinit-highlight(3, 5, dy: -1.1em, fill: rgb(0, 0, 255, 50)) |
1017 | 1045 | #pinit-point-from( |
1018 | 1046 | (3, 5), |
1019 | | - body-dx: -145pt, |
| 1047 | + body-dx: -195pt, |
1020 | 1048 | body-dy: -65pt, |
1021 | 1049 | offset-dx: 0pt, |
1022 | 1050 | offset-dy: -90pt, |
1023 | 1051 | pin-dx: 0pt, |
1024 | 1052 | pin-dy: -25pt, |
1025 | 1053 | )[ |
1026 | 1054 | #code-annotation[ |
1027 | | - *Condición* que a evaluar,\ debe resultar en `True` o `False` |
| 1055 | + Expresión, llamada condición,\ que al evaluarse resulta en `True` o `False` |
1028 | 1056 | ] |
1029 | 1057 | ] |
1030 | 1058 | ] |
|
1248 | 1276 |
|
1249 | 1277 | #new-section-slide[Bucles] |
1250 | 1278 |
|
| 1279 | +#slide[ |
| 1280 | + = Ejecución repetitiva |
| 1281 | + |
| 1282 | + #item-by-item[ |
| 1283 | + - Ejecutar la misma acción para cada valor en una secuencia. |
| 1284 | + - Ejecutar una acción hasta que se cumpla (o se deje de cumplir) una condición. |
| 1285 | + - No hace falta copiar y pegar el mismo código todo el tiempo... |
| 1286 | + - gracias a las siguientes *estructuras de control*: |
| 1287 | + - `for` |
| 1288 | + - `while` |
| 1289 | + ] |
| 1290 | +] |
| 1291 | + |
1251 | 1292 | #slide[ |
1252 | 1293 | = Partes de estructura `for` |
1253 | 1294 |
|
|
1338 | 1379 | pin-dx: 0pt, |
1339 | 1380 | pin-dy: -25pt, |
1340 | 1381 | )[ |
1341 | | - #code-annotation[Indican el inicio del bloque de código] |
| 1382 | + #code-annotation[Indica el inicio del bloque de código] |
1342 | 1383 | ] |
1343 | 1384 | ] |
1344 | 1385 |
|
|
1421 | 1462 | pin-dx: 0pt, |
1422 | 1463 | pin-dy: -25pt, |
1423 | 1464 | )[ |
1424 | | - #code-annotation[Indican el inicio del bloque de código] |
| 1465 | + #code-annotation[Indica el inicio del bloque de código] |
1425 | 1466 | ] |
1426 | 1467 | ] |
1427 | 1468 |
|
|
0 commit comments