-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
139 lines (136 loc) · 52.2 KB
/
index.html
File metadata and controls
139 lines (136 loc) · 52.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
<!DOCTYPE html><html lang="es" dir="ltr" data-theme="dark" data-has-hero class="astro-bguv2lll"> <head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>Domina Python interactivamente | Aprende Python</title><link rel="canonical"/><script src="https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.0.0/es5/latest?tex-mml-chtml.js"></script><link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"/><meta name="generator" content="Astro v5.12.0"/><meta name="generator" content="Starlight v0.35.0"/><meta property="og:title" content="Domina Python interactivamente"/><meta property="og:type" content="article"/><meta property="og:url"/><meta property="og:locale" content="es"/><meta property="og:description" content="Un recorrido práctico con ejecución en vivo, diagramas y futuro soporte AI."/><meta property="og:site_name" content="Aprende Python"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="Un recorrido práctico con ejecución en vivo, diagramas y futuro soporte AI."/><script>
window.StarlightThemeProvider = (() => {
const storedTheme =
typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme');
const theme =
storedTheme ||
(window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark');
document.documentElement.dataset.theme = theme === 'light' ? 'light' : 'dark';
return {
updatePickers(theme = storedTheme || 'auto') {
document.querySelectorAll('starlight-theme-select').forEach((picker) => {
const select = picker.querySelector('select');
if (select) select.value = theme;
/** @type {HTMLTemplateElement | null} */
const tmpl = document.querySelector(`#theme-icons`);
const newIcon = tmpl && tmpl.content.querySelector('.' + theme);
if (newIcon) {
const oldIcon = picker.querySelector('svg.label-icon');
if (oldIcon) {
oldIcon.replaceChildren(...newIcon.cloneNode(true).childNodes);
}
}
});
},
};
})();
</script><template id="theme-icons"><svg aria-hidden="true" class="light astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"/></svg><svg aria-hidden="true" class="dark astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"/></svg><svg aria-hidden="true" class="auto astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg></template><link rel="stylesheet" href="/_astro/print.DNXP8c50.css" media="print"><link rel="stylesheet" href="/_astro/index.DgDgxxhg.css">
<style>@layer starlight.components{:root{--sl-badge-default-border: var(--sl-color-accent);--sl-badge-default-bg: var(--sl-color-accent-low);--sl-badge-default-text: #fff;--sl-badge-note-border: var(--sl-color-blue);--sl-badge-note-bg: var(--sl-color-blue-low);--sl-badge-note-text: #fff;--sl-badge-danger-border: var(--sl-color-red);--sl-badge-danger-bg: var(--sl-color-red-low);--sl-badge-danger-text: #fff;--sl-badge-success-border: var(--sl-color-green);--sl-badge-success-bg: var(--sl-color-green-low);--sl-badge-success-text: #fff;--sl-badge-caution-border: var(--sl-color-orange);--sl-badge-caution-bg: var(--sl-color-orange-low);--sl-badge-caution-text: #fff;--sl-badge-tip-border: var(--sl-color-purple);--sl-badge-tip-bg: var(--sl-color-purple-low);--sl-badge-tip-text: #fff}[data-theme=light]:root{--sl-badge-default-bg: var(--sl-color-accent-high);--sl-badge-note-bg: var(--sl-color-blue-high);--sl-badge-danger-bg: var(--sl-color-red-high);--sl-badge-success-bg: var(--sl-color-green-high);--sl-badge-caution-bg: var(--sl-color-orange-high);--sl-badge-tip-bg: var(--sl-color-purple-high)}.sl-badge:where(.astro-avdet4wd){display:inline-block;border:1px solid var(--sl-color-border-badge);border-radius:.25rem;font-family:var(--sl-font-system-mono);line-height:normal;color:var(--sl-color-text-badge);background-color:var(--sl-color-bg-badge);overflow-wrap:anywhere}.sidebar-content .sl-badge:where(.astro-avdet4wd){line-height:1;font-size:var(--sl-text-xs);padding:.125rem .375rem}.sidebar-content a[aria-current=page]>.sl-badge:where(.astro-avdet4wd){--sl-color-bg-badge: transparent;--sl-color-border-badge: currentColor;color:inherit}.default:where(.astro-avdet4wd){--sl-color-bg-badge: var(--sl-badge-default-bg);--sl-color-border-badge: var(--sl-badge-default-border);--sl-color-text-badge: var(--sl-badge-default-text)}.note:where(.astro-avdet4wd){--sl-color-bg-badge: var(--sl-badge-note-bg);--sl-color-border-badge: var(--sl-badge-note-border);--sl-color-text-badge: var(--sl-badge-note-text)}.danger:where(.astro-avdet4wd){--sl-color-bg-badge: var(--sl-badge-danger-bg);--sl-color-border-badge: var(--sl-badge-danger-border);--sl-color-text-badge: var(--sl-badge-danger-text)}.success:where(.astro-avdet4wd){--sl-color-bg-badge: var(--sl-badge-success-bg);--sl-color-border-badge: var(--sl-badge-success-border);--sl-color-text-badge: var(--sl-badge-success-text)}.tip:where(.astro-avdet4wd){--sl-color-bg-badge: var(--sl-badge-tip-bg);--sl-color-border-badge: var(--sl-badge-tip-border);--sl-color-text-badge: var(--sl-badge-tip-text)}.caution:where(.astro-avdet4wd){--sl-color-bg-badge: var(--sl-badge-caution-bg);--sl-color-border-badge: var(--sl-badge-caution-border);--sl-color-text-badge: var(--sl-badge-caution-text)}.small:where(.astro-avdet4wd){font-size:var(--sl-text-xs);padding:.125rem .25rem}.medium:where(.astro-avdet4wd){font-size:var(--sl-text-sm);padding:.175rem .35rem}.large:where(.astro-avdet4wd){font-size:var(--sl-text-base);padding:.225rem .45rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) .sl-badge:where(.astro-avdet4wd){vertical-align:middle}}
@layer starlight.components{.card-grid:where(.astro-zntqmydn){display:grid;grid-template-columns:100%;gap:1rem}.card-grid:where(.astro-zntqmydn)>*{margin-top:0!important}@media (min-width: 50rem){.card-grid:where(.astro-zntqmydn){grid-template-columns:1fr 1fr;gap:1.5rem}.stagger:where(.astro-zntqmydn){--stagger-height: 5rem;padding-bottom:var(--stagger-height)}.stagger:where(.astro-zntqmydn)>*:nth-child(2n){transform:translateY(var(--stagger-height))}}}
@layer starlight.components{.card:where(.astro-v5tidmuc){--sl-card-border: var(--sl-color-purple);--sl-card-bg: var(--sl-color-purple-low);border:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-black);padding:clamp(1rem,calc(.125rem + 3vw),2.5rem);flex-direction:column;gap:clamp(.5rem,calc(.125rem + 1vw),1rem)}.card:where(.astro-v5tidmuc):nth-child(4n+1){--sl-card-border: var(--sl-color-orange);--sl-card-bg: var(--sl-color-orange-low)}.card:where(.astro-v5tidmuc):nth-child(4n+3){--sl-card-border: var(--sl-color-green);--sl-card-bg: var(--sl-color-green-low)}.card:where(.astro-v5tidmuc):nth-child(4n+4){--sl-card-border: var(--sl-color-red);--sl-card-bg: var(--sl-color-red-low)}.card:where(.astro-v5tidmuc):nth-child(4n+5){--sl-card-border: var(--sl-color-blue);--sl-card-bg: var(--sl-color-blue-low)}.title:where(.astro-v5tidmuc){font-weight:600;font-size:var(--sl-text-h4);color:var(--sl-color-white);line-height:var(--sl-line-height-headings);gap:1rem;align-items:center}.card:where(.astro-v5tidmuc) .icon:where(.astro-v5tidmuc){border:1px solid var(--sl-card-border);background-color:var(--sl-card-bg);padding:.2em;border-radius:.25rem;flex-shrink:0}.card:where(.astro-v5tidmuc) .body:where(.astro-v5tidmuc){margin:0;font-size:clamp(var(--sl-text-sm),calc(.5rem + 1vw),var(--sl-text-body))}}
@layer starlight.components{svg:where(.astro-c6vsoqas){color:var(--sl-icon-color);font-size:var(--sl-icon-size, 1em);width:1em;height:1em}}
@layer starlight.components{starlight-tabs:where(.astro-esqgolmp){display:block}.tablist-wrapper:where(.astro-esqgolmp){overflow-x:auto}:where(.astro-esqgolmp)[role=tablist]{display:flex;list-style:none;border-bottom:2px solid var(--sl-color-gray-5);padding:0}.tab:where(.astro-esqgolmp){margin-bottom:-2px}.tab:where(.astro-esqgolmp)>:where(.astro-esqgolmp)[role=tab]{display:flex;align-items:center;gap:.5rem;padding:0 1.25rem;text-decoration:none;border-bottom:2px solid var(--sl-color-gray-5);color:var(--sl-color-gray-3);outline-offset:var(--sl-outline-offset-inside);overflow-wrap:initial}.tab:where(.astro-esqgolmp) :where(.astro-esqgolmp)[role=tab][aria-selected=true]{color:var(--sl-color-white);border-color:var(--sl-color-text-accent);font-weight:600}.tablist-wrapper:where(.astro-esqgolmp)~[role=tabpanel]{margin-top:1rem}}
@layer starlight.components{.sl-link-card:where(.astro-mf7fz2mj){display:grid;grid-template-columns:1fr auto;gap:.5rem;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding:1rem;box-shadow:var(--sl-shadow-sm);position:relative}a:where(.astro-mf7fz2mj){text-decoration:none;line-height:var(--sl-line-height-headings)}a:where(.astro-mf7fz2mj):before{content:"";position:absolute;inset:0}.stack:where(.astro-mf7fz2mj){flex-direction:column;gap:.5rem}.title:where(.astro-mf7fz2mj){color:var(--sl-color-white);font-weight:600;font-size:var(--sl-text-lg)}.description:where(.astro-mf7fz2mj){color:var(--sl-color-gray-3);line-height:1.5}.icon:where(.astro-mf7fz2mj){color:var(--sl-color-gray-3)}.sl-link-card:where(.astro-mf7fz2mj):hover{background:var(--sl-color-gray-7, var(--sl-color-gray-6));border-color:var(--sl-color-gray-2)}.sl-link-card:where(.astro-mf7fz2mj):hover .icon:where(.astro-mf7fz2mj){color:var(--sl-color-white)}}
@layer starlight.components{.sl-steps{--bullet-size: calc(var(--sl-line-height) * 1rem);--bullet-margin: .375rem;list-style:none;counter-reset:steps-counter var(--sl-steps-start, 0);padding-inline-start:0}.sl-steps>li{counter-increment:steps-counter;position:relative;padding-inline-start:calc(var(--bullet-size) + 1rem);padding-bottom:1px;min-height:calc(var(--bullet-size) + var(--bullet-margin))}.sl-steps>li+li{margin-top:0}.sl-steps>li:before{content:counter(steps-counter);position:absolute;top:0;inset-inline-start:0;width:var(--bullet-size);height:var(--bullet-size);line-height:var(--bullet-size);font-size:var(--sl-text-xs);font-weight:600;text-align:center;color:var(--sl-color-white);background-color:var(--sl-color-gray-6);border-radius:99rem;box-shadow:inset 0 0 0 1px var(--sl-color-gray-5)}.sl-steps>li:after{--guide-width: 1px;content:"";position:absolute;top:calc(var(--bullet-size) + var(--bullet-margin));bottom:var(--bullet-margin);inset-inline-start:calc((var(--bullet-size) - var(--guide-width)) / 2);width:var(--guide-width);background-color:var(--sl-color-hairline-light)}}@layer starlight.content{.sl-steps>li>:first-child{--lh: calc(1em * var(--sl-line-height));--shift-y: calc(.5 * (var(--bullet-size) - var(--lh)));transform:translateY(var(--shift-y));margin-bottom:var(--shift-y)}.sl-steps>li>:first-child:where(h1,h2,h3,h4,h5,h6){--lh: calc(1em * var(--sl-line-height-headings))}@supports (--prop: 1lh){.sl-steps>li>:first-child{--lh: 1lh}}}
@layer starlight.components{starlight-file-tree:where(.astro-p67cqifm){--x-space: 1.5rem;--y-space: .125rem;--y-pad: 0;display:block;border:1px solid var(--sl-color-gray-5);padding:1rem;background-color:var(--sl-color-gray-6);font-size:var(--sl-text-xs);font-family:var(--__sl-font-mono);overflow-x:auto}starlight-file-tree:where(.astro-p67cqifm) .directory>details{border:0;padding:0;padding-inline-start:var(--x-space);background:transparent}starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary{margin-inline-start:calc(-1 * var(--x-space));border:0;padding:var(--y-pad) .625rem;font-weight:400;color:var(--sl-color-white);max-width:100%}starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary::marker,starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary::-webkit-details-marker{color:var(--sl-color-gray-3)}starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary:hover,starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary:hover .tree-icon{cursor:pointer;color:var(--sl-color-text-accent);fill:currentColor}starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary:hover~ul{border-color:var(--sl-color-gray-4)}starlight-file-tree:where(.astro-p67cqifm) .directory>details>summary:hover .highlight .tree-icon{color:var(--sl-color-text-invert);fill:currentColor}starlight-file-tree:where(.astro-p67cqifm) ul{margin-inline-start:.5rem;border-inline-start:1px solid var(--sl-color-gray-5);padding:0;padding-inline-start:.125rem;list-style:none}starlight-file-tree:where(.astro-p67cqifm)>ul{margin:0;border:0;padding:0}starlight-file-tree:where(.astro-p67cqifm) li{margin:var(--y-space) 0;padding:var(--y-pad) 0}starlight-file-tree:where(.astro-p67cqifm) .file{margin-inline-start:calc(var(--x-space) - .125rem);color:var(--sl-color-white)}starlight-file-tree:where(.astro-p67cqifm) .tree-entry{display:inline-flex;align-items:flex-start;flex-wrap:wrap;max-width:calc(100% - 1rem)}@media (min-width: 30em){starlight-file-tree:where(.astro-p67cqifm) .tree-entry{flex-wrap:nowrap}}starlight-file-tree:where(.astro-p67cqifm) .tree-entry>:first-child{flex-shrink:0}starlight-file-tree:where(.astro-p67cqifm) .empty{color:var(--sl-color-gray-3);padding-inline-start:.375rem}starlight-file-tree:where(.astro-p67cqifm) .comment{color:var(--sl-color-gray-3);padding-inline-start:1.625rem;max-width:24rem;min-width:12rem}starlight-file-tree:where(.astro-p67cqifm) .highlight{display:inline-block;border-radius:.25rem;padding-inline-end:.5rem;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}starlight-file-tree:where(.astro-p67cqifm) svg{display:inline;fill:var(--sl-color-gray-3);vertical-align:middle;margin-inline:.25rem .375rem;width:.875rem;height:.875rem}starlight-file-tree:where(.astro-p67cqifm) .highlight svg.tree-icon{fill:currentColor}}
@layer starlight.components{.sl-link-button:where(.astro-xwgiixxa){align-items:center;border:1px solid transparent;border-radius:999rem;display:inline-flex;font-size:var(--sl-text-sm);gap:.5em;line-height:1.1875;outline-offset:.25rem;padding:.4375rem 1.125rem;text-decoration:none}.sl-link-button:where(.astro-xwgiixxa).primary{background:var(--sl-color-text-accent);border-color:var(--sl-color-text-accent);color:var(--sl-color-black)}.sl-link-button:where(.astro-xwgiixxa).primary:hover{color:var(--sl-color-black)}.sl-link-button:where(.astro-xwgiixxa).secondary{border-color:inherit;color:var(--sl-color-white)}.sl-link-button:where(.astro-xwgiixxa).minimal{color:var(--sl-color-white);padding-inline:0}.sl-link-button:where(.astro-xwgiixxa) svg{flex-shrink:0}@media (min-width: 50rem){.sl-link-button:where(.astro-xwgiixxa){font-size:var(--sl-text-base);padding:.9375rem 1.25rem}}.sl-markdown-content .sl-link-button:where(.astro-xwgiixxa){margin-inline-end:1rem}.sl-markdown-content .sl-link-button:where(.astro-xwgiixxa):not(:where(p *)){margin-block:1rem}}
</style><script type="module" src="/_astro/page.7qqag-5g.js"></script><style>article:where(.astro-v2cbyr3p){max-width:40rem;margin-inline:auto;padding-block:5rem;flex-direction:column;align-items:center;text-align:center;gap:.5rem}article:where(.astro-v2cbyr3p)>*{max-width:50ch;margin-top:0!important}small:where(.astro-v2cbyr3p){color:var(--sl-color-gray-3)}svg:where(.astro-v2cbyr3p){width:15rem}
</style><style>.sl-box:where(.astro-atuksjhm){background-color:var(--sl-box-bg-color);color:var(--sl-color-white);padding:1rem;margin-top:0!important}.sl-box-caution:where(.astro-atuksjhm){--sl-box-alt-color: var(--sl-color-orange-high);--sl-box-bg-color: var(--sl-color-orange-low);--sl-box-border-color: var(--sl-color-orange)}.sl-box-danger:where(.astro-atuksjhm){--sl-box-alt-color: var(--sl-color-red-high);--sl-box-bg-color: var(--sl-color-red-low);--sl-box-border-color: var(--sl-color-red)}.sl-box-minimal:where(.astro-atuksjhm){--sl-box-alt-color: hsl(224 24% 86%);--sl-box-bg-color: hsl(224 14% 16%);--sl-box-border-color: hsl(224 4% 66%)}:root[data-theme=light] .sl-box-minimal:where(.astro-atuksjhm){--sl-box-alt-color: hsl(224 20% 34%);--sl-box-bg-color: hsl(224 20% 94%);--sl-box-border-color: hsl(224 20% 74%)}.sl-box-note:where(.astro-atuksjhm){--sl-box-alt-color: var(--sl-color-blue-high);--sl-box-bg-color: var(--sl-color-blue-low);--sl-box-border-color: var(--sl-color-blue)}.sl-box-success:where(.astro-atuksjhm){--sl-box-alt-color: var(--sl-color-green-high);--sl-box-bg-color: var(--sl-color-green-low);--sl-box-border-color: var(--sl-color-green)}.sl-box-tip:where(.astro-atuksjhm){--sl-box-alt-color: var(--sl-color-purple-high);--sl-box-bg-color: var(--sl-color-purple-low);--sl-box-border-color: var(--sl-color-purple)}p:where(.astro-atuksjhm){align-items:center;color:var(--sl-box-alt-color);display:flex;font-size:var(--sl-text-h5);font-weight:600;gap:.5rem;line-height:var(--sl-line-height-headings);margin-bottom:16px}p:where(.astro-atuksjhm) svg{flex-shrink:0;height:1.375rem;width:1.375rem}.sl-box:where(.astro-atuksjhm)>:is(ol,ul){padding-inline-start:1.4375rem}.sl-box:where(.astro-atuksjhm)>:is(ol,ul)>li:not(:has(label)){padding-inline-start:.375rem}.sl-box:where(.astro-atuksjhm)>:is(ol,ul)>li::marker{color:var(--sl-color-text)}.sl-box:where(.astro-atuksjhm) ul:has(li>label){list-style-type:none;padding-inline-start:.1875rem}.sl-box:where(.astro-atuksjhm) label{align-items:flex-start;display:flex;margin:0!important}.sl-box:where(.astro-atuksjhm) label :is(input[type=checkbox],input[type=radio]){accent-color:var(--sl-box-alt-color);flex-shrink:0;height:1.0625rem;width:1.0625rem}
</style><style>:root{--q-correct-bg: rgba(40, 167, 69, .1);--q-wrong-bg: rgba(220, 53, 69, .1);--q-correct-accent: #28a745;--q-wrong-accent: #dc3545}.q-option:where(.astro-yshsn24l){margin:.375rem 0}.q-option:where(.astro-yshsn24l) label:where(.astro-yshsn24l){display:flex;align-items:center;gap:.25rem;border-radius:.375rem;padding-left:4px;transition:background-color .2s;cursor:pointer}.q-option:where(.astro-yshsn24l) label:where(.astro-yshsn24l):hover{background-color:var(--q-option-hover-bg, rgba(0, 0, 0, .25))}.q-option:where(.astro-yshsn24l) input:where(.astro-yshsn24l){margin-right:.75rem;accent-color:var(--sl-color-text-accent);flex-shrink:0}.option-text:where(.astro-yshsn24l){flex:1;color:var(--sl-color-text);font-size:.95rem}.q-option:where(.astro-yshsn24l).correct label:where(.astro-yshsn24l){background-color:var(--q-correct-bg)}.q-option:where(.astro-yshsn24l).correct input:where(.astro-yshsn24l){accent-color:var(--q-correct-accent)}.q-option:where(.astro-yshsn24l).incorrect label:where(.astro-yshsn24l){background-color:var(--q-wrong-bg)}.q-option:where(.astro-yshsn24l).incorrect input:where(.astro-yshsn24l){accent-color:var(--q-wrong-accent)}
</style><style>:root[data-theme=dark]{--sl-box-bg-color: hsl(224 14% 16%);--sl-box-border-color: hsl(224 4% 66%);--sl-box-alt-color: hsl(224 24% 86%)}:root[data-theme=light]{--sl-box-bg-color: hsl(224 20% 94%);--sl-box-border-color: hsl(224 20% 74%);--sl-box-alt-color: hsl(224 20% 34%)}.q-root:where(.astro-hjxykrc5){position:relative;border-radius:calc(.5rem + 1px);padding:1rem;background-color:var(--sl-box-bg-color);border:1px solid var(--sl-box-border-color)}.buttons:where(.astro-hjxykrc5){position:relative;display:flex;justify-content:flex-end;gap:.4rem;margin-top:0!important}.buttons:where(.astro-hjxykrc5) button:where(.astro-hjxykrc5){border-radius:999rem;padding:.25rem 1.25rem;margin-top:0!important;font-size:.95rem;cursor:pointer;background-color:var(--sl-color-orange-low);border:1px solid var(--sl-color-orange);color:var(--sl-color-orange-high)}.buttons:where(.astro-hjxykrc5) button:where(.astro-hjxykrc5):disabled{cursor:not-allowed}.buttons:where(.astro-hjxykrc5) button:where(.astro-hjxykrc5):not(:disabled){cursor:pointer}.buttons:where(.astro-hjxykrc5) button:where(.astro-hjxykrc5):hover:not(:disabled){border-color:oklch(52% .11 var(--sl-hue-orange));color:var(--sl-color-orange-accent-invert)}.sl-box-caution:where(.astro-hjxykrc5){--sl-box-alt-color: var(--sl-color-orange-high);--sl-box-bg-color: var(--sl-color-orange-low);--sl-box-border-color: var(--sl-color-orange)}.sl-box-danger:where(.astro-hjxykrc5){--sl-box-alt-color: var(--sl-color-red-high);--sl-box-bg-color: var(--sl-color-red-low);--sl-box-border-color: var(--sl-color-red)}.sl-box-minimal:where(.astro-hjxykrc5){--sl-box-alt-color: hsl(224 24% 86%);--sl-box-bg-color: hsl(224 14% 16%);--sl-box-border-color: hsl(224 4% 66%)}:root[data-theme=light] .sl-box-minimal:where(.astro-hjxykrc5){--sl-box-alt-color: hsl(224 20% 34%);--sl-box-bg-color: hsl(224 20% 94%);--sl-box-border-color: hsl(224 20% 74%)}.sl-box-note:where(.astro-hjxykrc5){--sl-box-alt-color: var(--sl-color-blue-high);--sl-box-bg-color: var(--sl-color-blue-low);--sl-box-border-color: var(--sl-color-blue)}.sl-box-success:where(.astro-hjxykrc5){--sl-box-alt-color: var(--sl-color-green-high);--sl-box-bg-color: var(--sl-color-green-low);--sl-box-border-color: var(--sl-color-green)}.sl-box-tip:where(.astro-hjxykrc5){--sl-box-alt-color: var(--sl-color-purple-high);--sl-box-bg-color: var(--sl-color-purple-low);--sl-box-border-color: var(--sl-color-purple)}
</style></head> <body class="astro-bguv2lll"> <a href="#_top" class="astro-7q3lir66">Saltearse al contenido</a> <div class="page sl-flex astro-vrdttmbt"> <header class="header astro-vrdttmbt"><div class="header astro-kmkmnagf"> <div class="title-wrapper sl-flex astro-kmkmnagf"> <a href="/es" class="site-title sl-flex astro-m46x6ez3"> <img class="astro-m46x6ez3" alt src="/_astro/code.4-vWtzhl.svg" width="800" height="800"> <span class="sr-only astro-m46x6ez3" translate="no"> Aprende Python </span> </a> </div> <div class="sl-flex print:hidden astro-kmkmnagf"> <site-search class="astro-kmkmnagf astro-v37mnknz" data-translations="{"placeholder":"Buscar","clear_search":"Limpiar","load_more":"Cargar más resultados","search_label":"Buscar página","filters_label":"Filtros","zero_results":"Ningún resultado para: [SEARCH_TERM]","many_results":"[COUNT] resultados para: [SEARCH_TERM]","one_result":"[COUNT] resultado para: [SEARCH_TERM]","alt_search":"Ningún resultado para [SEARCH_TERM]. Mostrando resultados para: [DIFFERENT_TERM]","search_suggestion":"Ningún resultado para [SEARCH_TERM]. Prueba alguna de estas búsquedas:","searching":"Buscando [SEARCH_TERM]..."}"> <button data-open-modal disabled aria-label="Buscar" aria-keyshortcuts="Control+K" class="astro-v37mnknz"> <svg aria-hidden="true" class="astro-v37mnknz astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"/></svg> <span class="sl-hidden md:sl-block astro-v37mnknz" aria-hidden="true">Buscar</span> <kbd class="sl-hidden md:sl-flex astro-v37mnknz" style="display: none;"> <kbd class="astro-v37mnknz">Ctrl</kbd><kbd class="astro-v37mnknz">K</kbd> </kbd> </button> <dialog style="padding:0" aria-label="Buscar" class="astro-v37mnknz"> <div class="dialog-frame sl-flex astro-v37mnknz"> <button data-close-modal class="sl-flex md:sl-hidden astro-v37mnknz"> Interrumpir </button> <div class="search-container astro-v37mnknz"> <div id="starlight__search" class="astro-v37mnknz"></div> </div> </div> </dialog> </site-search> <script>
(() => {
const openBtn = document.querySelector('button[data-open-modal]');
const shortcut = openBtn?.querySelector('kbd');
if (!openBtn || !(shortcut instanceof HTMLElement)) return;
const platformKey = shortcut.querySelector('kbd');
if (platformKey && /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)) {
platformKey.textContent = '⌘';
openBtn.setAttribute('aria-keyshortcuts', 'Meta+K');
}
shortcut.style.display = '';
})();
</script> <script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js"></script> </div> <div class="sl-hidden md:sl-flex print:hidden right-group astro-kmkmnagf"> <div class="sl-flex social-icons astro-kmkmnagf"> <a href="https://ayudaenpython.com" rel="me" class="sl-flex astro-wy4te6ga"><span class="sr-only astro-wy4te6ga">Home</span><svg aria-hidden="true" class="astro-wy4te6ga astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M19.33 10.18a1 1 0 0 1-.77 0 1 1 0 0 1-.62-.93l.01-1.83-8.2 8.2a1 1 0 0 1-1.41-1.42l8.2-8.2H14.7a1 1 0 0 1 0-2h4.25a1 1 0 0 1 1 1v4.25a1 1 0 0 1-.62.93Z"/><path d="M11 4a1 1 0 1 1 0 2H7a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-4a1 1 0 1 1 2 0v4a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h4Z"/></svg></a><a href="https://github.com/AyudaEnPython" rel="me" class="sl-flex astro-wy4te6ga"><span class="sr-only astro-wy4te6ga">GitHub</span><svg aria-hidden="true" class="astro-wy4te6ga astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a><a href="https://facebook.com/AyudaEnPython" rel="me" class="sl-flex astro-wy4te6ga"><span class="sr-only astro-wy4te6ga">Facebook</span><svg aria-hidden="true" class="astro-wy4te6ga astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M20.9 2H3.1A1.1 1.1 0 0 0 2 3.1v17.8A1.1 1.1 0 0 0 3.1 22h9.58v-7.75h-2.6v-3h2.6V9a3.64 3.64 0 0 1 3.88-4 20.26 20.26 0 0 1 2.33.12v2.7H17.3c-1.26 0-1.5.6-1.5 1.47v1.93h3l-.39 3H15.8V22h5.1a1.1 1.1 0 0 0 1.1-1.1V3.1A1.1 1.1 0 0 0 20.9 2Z"/></svg></a><a href="https://instagram.com/ayudaenpython" rel="me" class="sl-flex astro-wy4te6ga"><span class="sr-only astro-wy4te6ga">Instagram</span><svg aria-hidden="true" class="astro-wy4te6ga astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17.3 5.5a1.2 1.2 0 1 0 1.2 1.2 1.2 1.2 0 0 0-1.2-1.2ZM22 7.9a7.6 7.6 0 0 0-.4-2.5 5 5 0 0 0-1.2-1.7 4.7 4.7 0 0 0-1.8-1.2 7.3 7.3 0 0 0-2.4-.4L12 2H7.9a7.3 7.3 0 0 0-2.5.5 4.8 4.8 0 0 0-1.7 1.2 4.7 4.7 0 0 0-1.2 1.8 7.3 7.3 0 0 0-.4 2.4L2 12v4.1a7.3 7.3 0 0 0 .5 2.4 4.7 4.7 0 0 0 1.2 1.8 4.8 4.8 0 0 0 1.8 1.2 7.3 7.3 0 0 0 2.4.4l4.1.1h4.1a7.3 7.3 0 0 0 2.4-.5 4.7 4.7 0 0 0 1.8-1.2 4.8 4.8 0 0 0 1.2-1.7 7.6 7.6 0 0 0 .4-2.5L22 12V7.9ZM20.1 16a5.6 5.6 0 0 1-.3 1.9A3 3 0 0 1 19 19a3.2 3.2 0 0 1-1.1.8 5.6 5.6 0 0 1-1.9.3H8a5.7 5.7 0 0 1-1.9-.3A3.3 3.3 0 0 1 5 19a3 3 0 0 1-.7-1.1 5.5 5.5 0 0 1-.4-1.9l-.1-4V8a5.5 5.5 0 0 1 .4-1.9A3 3 0 0 1 5 5a3.1 3.1 0 0 1 1.1-.8A5.7 5.7 0 0 1 8 3.9l4-.1h4a5.6 5.6 0 0 1 1.9.4A3 3 0 0 1 19 5a3 3 0 0 1 .7 1.1A5.6 5.6 0 0 1 20 8l.1 4v4ZM12 6.9a5.1 5.1 0 1 0 5.1 5.1A5.1 5.1 0 0 0 12 6.9Zm0 8.4a3.3 3.3 0 1 1 3.3-3.3 3.3 3.3 0 0 1-3.3 3.3Z"/></svg></a><a href="https://youtube.com/@ayudaenpython" rel="me" class="sl-flex astro-wy4te6ga"><span class="sr-only astro-wy4te6ga">YouTube</span><svg aria-hidden="true" class="astro-wy4te6ga astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M23.5 6.2A3 3 0 0 0 21.4 4c-1.9-.5-9.4-.5-9.4-.5s-7.5 0-9.4.5A3 3 0 0 0 .5 6.3C0 8 0 12 0 12s0 4 .5 5.8A3 3 0 0 0 2.6 20c1.9.6 9.4.6 9.4.6s7.5 0 9.4-.6a3 3 0 0 0 2.1-2c.5-2 .5-5.9.5-5.9s0-4-.5-5.8zm-14 9.4V8.4l6.3 3.6-6.3 3.6z"/></svg></a> </div> <starlight-rapide-theme-select class="astro-vimfzm3o"> <button aria-label="Seleccionar tema" aria-live="polite" class="sl-flex astro-vimfzm3o" title="Seleccionar tema"> <svg aria-hidden="true" height="16" viewBox="0 0 24 24" width="16" class="astro-vimfzm3o"> <mask class="moon astro-vimfzm3o" id="moon-mask-7b3c1e8d"> <rect x="0" y="0" width="100%" height="100%" fill="white" class="astro-vimfzm3o"></rect> <circle cx="24" cy="10" r="6" fill="black" class="astro-vimfzm3o"></circle> </mask> <circle class="sun astro-vimfzm3o" cx="12" cy="12" r="6" mask="url(#moon-mask-7b3c1e8d)"></circle> <g class="sun-beams astro-vimfzm3o" stroke="currentColor"> <line x1="12" y1="1" x2="12" y2="3" class="astro-vimfzm3o"></line> <line x1="12" y1="21" x2="12" y2="23" class="astro-vimfzm3o"></line> <line x1="4.22" y1="4.22" x2="5.64" y2="5.64" class="astro-vimfzm3o"></line> <line x1="18.36" y1="18.36" x2="19.78" y2="19.78" class="astro-vimfzm3o"></line> <line x1="1" y1="12" x2="3" y2="12" class="astro-vimfzm3o"></line> <line x1="21" y1="12" x2="23" y2="12" class="astro-vimfzm3o"></line> <line x1="4.22" y1="19.78" x2="5.64" y2="18.36" class="astro-vimfzm3o"></line> <line x1="18.36" y1="5.64" x2="19.78" y2="4.22" class="astro-vimfzm3o"></line> </g> </svg> </button> </starlight-rapide-theme-select> <script>
StarlightThemeProvider.updatePickers()
</script> <script type="module">const n="starlight-theme";function c(e){return e==="auto"||e==="dark"||e==="light"?e:"auto"}function l(){return c(typeof localStorage<"u"&&localStorage.getItem(n))}function i(e){typeof localStorage<"u"&&localStorage.setItem(n,e==="light"||e==="dark"?e:"")}function s(){return matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}function t(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e==="auto"?s():e,i(e)}matchMedia("(prefers-color-scheme: light)").addEventListener("change",()=>{l()==="auto"&&t("auto")});customElements.define("starlight-rapide-theme-select",class extends HTMLElement{constructor(){super(),t(l());const a=this.querySelector("button");a?.addEventListener("click",()=>{const o=c(document.documentElement.dataset.theme),r=o==="dark"?"light":o==="light"?"dark":"auto";t(r),a?.setAttribute("aria-label",`${r} theme`)})}});</script> <div style="--sl-rapide-lang-select-width: 7ch;"><starlight-lang-select><label style="--sl-select-width: 7em" class="astro-4yphtoen"> <span class="sr-only astro-4yphtoen">Seleccionar idioma</span> <svg aria-hidden="true" class="icon label-icon astro-4yphtoen astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path fill-rule="evenodd" d="M8.516 3a.94.94 0 0 0-.941.94v1.15H2.94a.94.94 0 1 0 0 1.882h7.362a7.422 7.422 0 0 1-1.787 3.958 7.42 7.42 0 0 1-1.422-2.425.94.94 0 1 0-1.774.627 9.303 9.303 0 0 0 1.785 3.043 7.422 7.422 0 0 1-4.164 1.278.94.94 0 1 0 0 1.881 9.303 9.303 0 0 0 5.575-1.855 9.303 9.303 0 0 0 4.11 1.74l-.763 1.525a.968.968 0 0 0-.016.034l-1.385 2.77a.94.94 0 1 0 1.683.841l1.133-2.267h5.806l1.134 2.267a.94.94 0 0 0 1.683-.841l-1.385-2.769a.95.95 0 0 0-.018-.036l-3.476-6.951a.94.94 0 0 0-1.682 0l-1.82 3.639a7.423 7.423 0 0 1-3.593-1.256 9.303 9.303 0 0 0 2.27-5.203h1.894a.94.94 0 0 0 0-1.881H9.456V3.94A.94.94 0 0 0 8.516 3Zm6.426 11.794a1.068 1.068 0 0 1-.02.039l-.703 1.407h3.924l-1.962-3.924-1.24 2.478Z" clip-rule="evenodd"/></svg> <select value="/es/" autocomplete="off" class="astro-4yphtoen"> <option value="/en/" class="astro-4yphtoen">English</option><option value="/es/" selected class="astro-4yphtoen">Español</option> </select> <svg aria-hidden="true" class="icon caret astro-4yphtoen astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg> </label> </starlight-lang-select><script type="module">class s extends HTMLElement{constructor(){super();const e=this.querySelector("select");e&&(e.addEventListener("change",t=>{t.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=t.currentTarget.value)}),window.addEventListener("pageshow",t=>{if(!t.persisted)return;const n=e.querySelector("option[selected]")?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}}customElements.define("starlight-lang-select",s);</script></div> </div> </div> </header> <div class="main-frame astro-vrdttmbt"> <script type="module">const a=document.getElementById("starlight__sidebar"),n=a?.querySelector("sl-sidebar-state-persist"),o="sl-sidebar-state",i=()=>{let t=[];const e=n?.dataset.hash||"";try{const s=sessionStorage.getItem(o),r=JSON.parse(s||"{}");Array.isArray(r.open)&&r.hash===e&&(t=r.open)}catch{}return{hash:e,open:t,scroll:a?.scrollTop||0}},c=t=>{try{sessionStorage.setItem(o,JSON.stringify(t))}catch{}},d=()=>c(i()),l=(t,e)=>{const s=i();s.open[e]=t,c(s)};n?.addEventListener("click",t=>{if(!(t.target instanceof Element))return;const e=t.target.closest("summary")?.closest("details");if(!e)return;const s=e.querySelector("sl-sidebar-restore"),r=parseInt(s?.dataset.index||"");isNaN(r)||l(!e.open,r)});addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&d()});addEventListener("pageHide",d);</script> <div class="lg:sl-flex astro-67yu43on"> <div class="main-pane astro-67yu43on"> <main data-pagefind-body class="astro-bguv2lll" lang="es" dir="ltr"> <div class="content-panel astro-7nkwcw3z"> <div class="sl-container astro-7nkwcw3z"> <div class="hero astro-jbfsktt5"> <img src="/_astro/code.4-vWtzhl_A0IIg.svg" loading="eager" decoding="async" alt fetchpriority="auto" width="400" height="400" class="astro-jbfsktt5"> <div class="sl-flex stack astro-jbfsktt5"> <div class="sl-flex copy astro-jbfsktt5"> <h1 id="_top" data-page-title class="astro-jbfsktt5">Domina Python interactivamente</h1> <div class="tagline astro-jbfsktt5">Adquiere una sólida base con un material<div><span id="changing_word">Interactivo</span></div>
</div> </div> <div class="sl-flex actions astro-jbfsktt5"> <a class="sl-link-button not-content primary astro-jbfsktt5 astro-xwgiixxa" href="/es/01-introduction/01-introduction"> Empezar <svg aria-hidden="true" class="astro-xwgiixxa astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17.92 11.62a1.001 1.001 0 0 0-.21-.33l-5-5a1.003 1.003 0 1 0-1.42 1.42l3.3 3.29H7a1 1 0 0 0 0 2h7.59l-3.3 3.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219l5-5a1 1 0 0 0 .21-.33 1 1 0 0 0 0-.76Z"/></svg> </a> <a class="sl-link-button not-content minimal astro-jbfsktt5 astro-xwgiixxa" href="https://github.com/AyudaEnPython"> Colabora en GitHub <svg aria-hidden="true" class="astro-xwgiixxa astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg> </a> </div> </div> </div> <div class="sl-markdown-content"> <div class="absolute inset-0 z-[-1] bottom-0 left-0 right-0 top-0 bg-[linear-gradient(to_right,#4f4f4f2e_1px,transparent_1px),linear-gradient(to_bottom,#4f4f4f2e_1px,transparent_1px)] bg-[size:14px_24px] [mask-image:radial-gradient(ellipse_60%_50%_at_50%_0%,#000_70%,transparent_100%)]"></div> <!-- <div class="relative h-full w-full bg-slate-950"> --> <!-- <div class="absolute bottom-0 left-0 right-0 top-0 bg-[linear-gradient(to_right,#4f4f4f2e_1px,transparent_1px),linear-gradient(to_bottom,#4f4f4f2e_1px,transparent_1px)] bg-[size:14px_24px]"> </div> --> <!-- </div> -->
<div class="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto"> <div class="lg:grid lg:grid-cols-12 lg:gap-4 lg:items-center"> <div class="lg:col-span-9"> <div class="grid grid-cols-1 md:grid-cols-12 gap-4 sm:gap-8 items-center"> <div class="col-span-1 md:col-span-5 order-2 lg:order-1"> <script type="module" src="/_astro/Mermaid.astro_astro_type_script_index_0_lang.CpUwGzOc.js"></script> <center> <div class="mermaid">
stateDiagram-v2
[*] --> Idle
state Key <<choice>>
Idle --> Key : ctrl+alt
Key --> Mode : ↵
Key --> Run : |
Key --> Clear : '
Mode --> Idle
Run --> Idle
Clear --> Idle
</div> </center> </div> <div class="col-span-1 md:col-span-7 order-1 lg:order-2"> <div class="not-content runnable">
def hi(name: str) -> str:
"""Welcome greeting
:param name: User's name
:type name: str
:return: Welcome message
:rtype: str
"""
return f"Hi {name}!"
if __name__ == "__main__":
name = input("Your name: ")
print(hi(name))
</div> </div> </div> </div> <div class="mt-5 sm:mt-10 lg:mt-0 lg:col-span-3"> <div class="space-y-4 sm:space-y-4"> <div class="space-y-2 md:space-y-4 text-center lg:text-right"> <h2 class="font-extrabold tracking-tight leading-none text-3xl lg:text-4xl text-gray-800 dark:text-neutral-200 custom-h2"> Bloques Dinámicos </h2> <p class="text-gray-600 dark:text-neutral-400">Ejecuta fragmentos de código y observa los resultados</p> </div> <ul class="grid grid-cols-3 lg:grid-cols-2 gap-x-4 gap-y-4 [&>li]:mt-0"> <li class="flex items-center gap-x-2"> <span class="size-4 flex justify-center items-center text-blue-600 dark:text-blue-500">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<path fill="currentColor"
d="M5.0333 14.8284L6.44751 16.2426L10.6902 12L6.44751 7.75733L5.0333 9.17155L7.86172 12L5.0333 14.8284Z"
/>
<path d="M15 14H11V16H15V14Z" fill="currentColor" />
<path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"
d="M2 2C0.895431 2 0 2.89543 0 4V20C0 21.1046 0.89543 22 2 22H22C23.1046 22 24 21.1046 24 20V4C24 2.89543 23.1046 2 22 2H2ZM22 4H2L2 20H22V4Z"
/>
</svg> </span> <span class="text-sm sm:text-base text-neutral-600 dark:text-neutral-400"> Run </span> </li><li class="flex items-center gap-x-2"> <span class="size-4 flex justify-center items-center text-blue-600 dark:text-blue-500">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" >
<path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"
d="M3.49997 12.8995C2.71892 13.6805 2.71892 14.9468 3.49997 15.7279L7.35785 19.5858H4.08576C3.53347 19.5858 3.08576 20.0335 3.08576 20.5858C3.08576 21.1381 3.53347 21.5858 4.08576 21.5858H20.0858C20.638 21.5858 21.0858 21.1381 21.0858 20.5858C21.0858 20.0335 20.638 19.5858 20.0858 19.5858H10.9558L20.4705 10.071C21.2516 9.28999 21.2516 8.02366 20.4705 7.24261L16.2279 2.99997C15.4468 2.21892 14.1805 2.21892 13.3995 2.99997L3.49997 12.8995ZM7.82579 11.4021L4.91418 14.3137L9.15683 18.5563L12.0684 15.6447L7.82579 11.4021ZM9.24 9.98787L13.4826 14.2305L19.0563 8.65683L14.8137 4.41418L9.24 9.98787Z"
/>
</svg> </span> <span class="text-sm sm:text-base text-neutral-600 dark:text-neutral-400"> Clear </span> </li><li class="flex items-center gap-x-2"> <span class="size-4 flex justify-center items-center text-blue-600 dark:text-blue-500">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<path d="M13 7H7V5H13V7Z" fill="currentColor" />
<path d="M13 11H7V9H13V11Z" fill="currentColor" />
<path d="M7 15H13V13H7V15Z" fill="currentColor" />
<path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"
d="M3 19V1H17V5H21V23H7V19H3ZM15 17V3H5V17H15ZM17 7V19H9V21H19V7H17Z"
/>
</svg> </span> <span class="text-sm sm:text-base text-neutral-600 dark:text-neutral-400"> Copy </span> </li><li class="flex items-center gap-x-2"> <span class="size-4 flex justify-center items-center text-blue-600 dark:text-blue-500">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"
d="M21.2635 2.29289C20.873 1.90237 20.2398 1.90237 19.8493 2.29289L18.9769 3.16525C17.8618 2.63254 16.4857 2.82801 15.5621 3.75165L4.95549 14.3582L10.6123 20.0151L21.2189 9.4085C22.1426 8.48486 22.338 7.1088 21.8053 5.99367L22.6777 5.12132C23.0682 4.7308 23.0682 4.09763 22.6777 3.70711L21.2635 2.29289ZM16.9955 10.8035L10.6123 17.1867L7.78392 14.3582L14.1671 7.9751L16.9955 10.8035ZM18.8138 8.98525L19.8047 7.99429C20.1953 7.60376 20.1953 6.9706 19.8047 6.58007L18.3905 5.16586C18 4.77534 17.3668 4.77534 16.9763 5.16586L15.9853 6.15683L18.8138 8.98525Z"
/>
<path fill="currentColor"
d="M2 22.9502L4.12171 15.1717L9.77817 20.8289L2 22.9502Z"
/>
</svg> </span> <span class="text-sm sm:text-base text-neutral-600 dark:text-neutral-400"> Mode </span> </li><li class="flex items-center gap-x-2"> <span class="size-4 flex justify-center items-center text-blue-600 dark:text-blue-500">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<path fill="currentColor"
d="M7 15C5.34315 15 4 13.6569 4 12C4 10.3431 5.34315 9 7 9C8.65685 9 10 10.3431 10 12C10 13.6569 8.65685 15 7 15Z"
/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"
d="M24 12C24 8.13401 20.866 5 17 5H7C3.13401 5 0 8.13401 0 12C0 15.866 3.13401 19 7 19H17C20.866 19 24 15.866 24 12ZM17 7H7C4.23858 7 2 9.23858 2 12C2 14.7614 4.23858 17 7 17H17C19.7614 17 22 14.7614 22 12C22 9.23858 19.7614 7 17 7Z"
/>
</svg> </span> <span class="text-sm sm:text-base text-neutral-600 dark:text-neutral-400"> On </span> </li><li class="flex items-center gap-x-2"> <span class="size-4 flex justify-center items-center text-blue-600 dark:text-blue-500">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<path fill="currentColor"
d="M17 15C18.6569 15 20 13.6569 20 12C20 10.3431 18.6569 9 17 9C15.3431 9 14 10.3431 14 12C14 13.6569 15.3431 15 17 15Z"
/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor"
d="M0 12C0 8.13401 3.13401 5 7 5H17C20.866 5 24 8.13401 24 12C24 15.866 20.866 19 17 19H7C3.13401 19 0 15.866 0 12ZM7 7H17C19.7614 7 22 9.23858 22 12C22 14.7614 19.7614 17 17 17H7C4.23858 17 2 14.7614 2 12C2 9.23858 4.23858 7 7 7Z"
/>
</svg> </span> <span class="text-sm sm:text-base text-neutral-600 dark:text-neutral-400"> Off </span> </li> </ul> </div> </div> </div> </div>
<section class="bg-transparent"> <div class="grid max-w-screen-xl px-4 py-10 sm:px-6 lg:gap-8 lg:px-8 lg:py-14 lg:grid-cols-12 mx-auto mb-4"> <div class="place-self-center lg:col-span-5 text-center lg:text-right"> <h2 class="text-3xl lg:text-4xl font-extrabold tracking-tight leading-none text-gray-800 dark:text-neutral-200 custom-h2"> Refuerza tu aprendizaje </h2> <p class="max-w-md text-gray-600 dark:text-neutral-400"> Pon a prueba tus conocimientos resolviendo los cuestionarios disponibles en cada sección </p> </div> <div class="lg:mt-0 lg:col-span-7 lg:flex justify-center"> <div class="sl-box sl-box-undefined q-root astro-hjxykrc5"> <sl-questions-root class="astro-hjxykrc5"> <div class="sl-box sl-box-minimal astro-atuksjhm"> <p class="astro-atuksjhm">¿Cuál de estas definiciones describe mejor un algoritmo?</p> <sl-quiz-card><ul class="options-list"><li class="q-option astro-yshsn24l"> <label class="astro-yshsn24l"> <input type="radio" class="astro-yshsn24l"> <span class="option-text astro-yshsn24l">Un conjunto de instrucciones ambiguas para experimentar datos.</span> </label> </li> <li class="q-option astro-yshsn24l"> <label class="astro-yshsn24l"> <input type="radio" class="astro-yshsn24l"> <span class="option-text astro-yshsn24l">Una serie infinita de pasos que nunca termina.</span> </label> </li> <li class="q-option astro-yshsn24l"> <label class="astro-yshsn24l"> <input type="radio" data-correct class="astro-yshsn24l"> <span class="option-text astro-yshsn24l">Un conjunto finito, ordenado y explícito de instrucciones para resolver un problema.</span> </label> </li> </ul></sl-quiz-card> </div> <script type="module">customElements.define("sl-quiz-card",class extends HTMLElement{evaluate(){this.querySelectorAll("li").forEach(e=>{e.classList.remove("correct","incorrect")}),this.querySelectorAll('input[type="radio"]').forEach(e=>{const t=e.closest("li");t&&(e.hasAttribute("data-correct")?t.classList.add("correct"):t.classList.add("incorrect"))})}});</script> <div class="buttons astro-hjxykrc5"> <button class="submit-btn astro-hjxykrc5" type="button" disabled><!-- @ts-ignore ---> Verificar </button> <button class="reset-btn astro-hjxykrc5" type="button"><!-- @ts-ignore ---> Reiniciar </button> </div> </sl-questions-root> </div> <script type="module">customElements.define("sl-questions-root",class extends HTMLElement{connectedCallback(){this._submitBtn=this.querySelector(".submit-btn"),this._initRadios(),this._hookSubmit(),this._hookReset(),this._updateSubmitState()}_initRadios(){this.querySelectorAll("sl-quiz-card").forEach((s,t)=>{const e=`quiz-${t}-${Math.random().toString(36).substr(2,5)}`;s.querySelectorAll('input[type="radio"]').forEach(i=>{i.name=e,i.disabled=!1,i.addEventListener("change",()=>this._updateSubmitState())})})}_updateSubmitState(){const t=Array.from(this.querySelectorAll("sl-quiz-card")).every(e=>Array.from(e.querySelectorAll('input[type="radio"]')).some(i=>i.checked));this._submitBtn.disabled=!t}_hookSubmit(){this._submitBtn.addEventListener("click",()=>{this.querySelectorAll("sl-quiz-card").forEach(s=>{s.evaluate()})})}_hookReset(){this.querySelector(".reset-btn").addEventListener("click",()=>{this.querySelectorAll("sl-quiz-card").forEach(t=>{t.querySelectorAll("li").forEach(e=>{e.classList.remove("correct","incorrect")}),t.querySelectorAll('input[type="radio"]').forEach(e=>{e.checked=!1})}),this._updateSubmitState()})}});</script> </div> </div> </section>
<div class="card-grid stagger astro-zntqmydn"><article class="card sl-flex astro-v5tidmuc"> <p class="title sl-flex astro-v5tidmuc"> <svg aria-hidden="true" class="icon astro-v5tidmuc astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path fill-rule="evenodd" d="M1.44 8.855v-.001l3.527-3.516c.34-.344.802-.541 1.285-.548h6.649l.947-.947c3.07-3.07 6.207-3.072 7.62-2.868a1.821 1.821 0 0 1 1.557 1.557c.204 1.413.203 4.55-2.868 7.62l-.946.946v6.649a1.845 1.845 0 0 1-.549 1.286l-3.516 3.528a1.844 1.844 0 0 1-3.11-.944l-.858-4.275-4.52-4.52-2.31-.463-1.964-.394A1.847 1.847 0 0 1 .98 10.693a1.843 1.843 0 0 1 .46-1.838Zm5.379 2.017-3.873-.776L6.32 6.733h4.638l-4.14 4.14Zm8.403-5.655c2.459-2.46 4.856-2.463 5.89-2.33.134 1.035.13 3.432-2.329 5.891l-6.71 6.71-3.561-3.56 6.71-6.711Zm-1.318 15.837-.776-3.873 4.14-4.14v4.639l-3.364 3.374Z" clip-rule="evenodd"/><path d="M9.318 18.345a.972.972 0 0 0-1.86-.561c-.482 1.435-1.687 2.204-2.934 2.619a8.22 8.22 0 0 1-1.23.302c.062-.365.157-.79.303-1.229.415-1.247 1.184-2.452 2.62-2.935a.971.971 0 1 0-.62-1.842c-.12.04-.236.084-.35.13-2.02.828-3.012 2.588-3.493 4.033a10.383 10.383 0 0 0-.51 2.845l-.001.016v.063c0 .536.434.972.97.972H2.24a7.21 7.21 0 0 0 .878-.065c.527-.063 1.248-.19 2.02-.447 1.445-.48 3.205-1.472 4.033-3.494a5.828 5.828 0 0 0 .147-.407Z"/></svg> <span class="astro-v5tidmuc">Exploración Interactiva</span> </p> <div class="body astro-v5tidmuc"><p>Parcipita activamente con el contenido: visualiza diagramas, experimenta
con código en vivo y resuelve cuestionarios.</p></div> </article> <article class="card sl-flex astro-v5tidmuc"> <p class="title sl-flex astro-v5tidmuc"> <svg aria-hidden="true" class="icon astro-v5tidmuc astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path d="M0.127 6.839L0.127 0.608L16.929 0.608L16.929 6.839L0.127 6.839ZM7.040 15.116L7.040 8.885L23.873 8.885L23.873 15.116L7.040 15.116ZM17.053 23.393L17.053 17.162L23.873 17.162L23.873 23.393L17.053 23.393Z"/></svg> <span class="astro-v5tidmuc">Ruta Guiada</span> </p> <div class="body astro-v5tidmuc"><p>Sigue un itinerario de aprendizaje estructurado con teoría, ejemplos,
ejercicios y retos graduados para todos los niveles.</p></div> </article> <article class="card sl-flex astro-v5tidmuc"> <p class="title sl-flex astro-v5tidmuc"> <svg aria-hidden="true" class="icon astro-v5tidmuc astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path d="M20.16 5A6.29 6.29 0 0 0 12 4.36a6.27 6.27 0 0 0-8.16 9.48l6.21 6.22a2.78 2.78 0 0 0 3.9 0l6.21-6.22a6.27 6.27 0 0 0 0-8.84m-1.41 7.46-6.21 6.21a.76.76 0 0 1-1.08 0l-6.21-6.24a4.29 4.29 0 0 1 0-6 4.27 4.27 0 0 1 6 0 1 1 0 0 0 1.42 0 4.27 4.27 0 0 1 6 0 4.29 4.29 0 0 1 .08 6Z"/></svg> <span class="astro-v5tidmuc">Comunidad Activa</span> </p> <div class="body astro-v5tidmuc"><p>Únete a nuestra comunidad para resolver dudas, compartir soluciones y
crecer colaborando con otros miembros.</p></div> </article> <article class="card sl-flex astro-v5tidmuc"> <p class="title sl-flex astro-v5tidmuc"> <svg aria-hidden="true" class="icon astro-v5tidmuc astro-c6vsoqas" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path d="M17 22H5a3 3 0 0 1-3-3V9a3 3 0 0 1 3-3h1a4 4 0 0 1 7.3-2.18c.448.64.692 1.4.7 2.18h3a1 1 0 0 1 1 1v3a4 4 0 0 1 2.18 7.3A3.86 3.86 0 0 1 18 18v3a1 1 0 0 1-1 1ZM5 8a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h11v-3.18a1 1 0 0 1 1.33-.95 1.77 1.77 0 0 0 1.74-.23 2 2 0 0 0 .93-1.37 2 2 0 0 0-.48-1.59 1.89 1.89 0 0 0-2.17-.55 1 1 0 0 1-1.33-.95V8h-3.2a1 1 0 0 1-1-1.33 1.77 1.77 0 0 0-.23-1.74 1.939 1.939 0 0 0-3-.43A2 2 0 0 0 8 6c.002.23.046.456.13.67A1 1 0 0 1 7.18 8H5Z"/></svg> <span class="astro-v5tidmuc">Próximamente</span> </p> <div class="body astro-v5tidmuc"><p>Recursos extras (cheatsheets, artículos, etc.) e IA al rescate:
retroalimentación inmediata, mentoría virtual y más…</p></div> </article> </div>
<article class="sl-flex astro-v2cbyr3p" aria-labelledby="about-astro-heading"> <small id="about-astro-heading" class="astro-v2cbyr3p"> Con el soporte de <div class="mt-2 flex flex-col items-center space-y-0 astro-v2cbyr3p"> <img src="/_astro/logo_footer.Doi_cduf_Z50G5S.webp" alt="logo" loading="lazy" decoding="async" fetchpriority="auto" width="27" height="16" class="astro-v2cbyr3p"> <div class="text-center font-extrabold tracking-tight mt-1 astro-v2cbyr3p"> <span class="text-[#4584b6] astro-v2cbyr3p">Ayuda</span><span class="text-[#fff] astro-v2cbyr3p">En</span><span class="text-[#ffde57] astro-v2cbyr3p">Python</span> </div> </div> </small> <p>AyudaEnPython es una comunidad dedicada a brindar apoyo y resolver cualquier
duda, problema o consulta.
Compartimos información, conocimientos y experiencias relacionadas a Python.</p><p><a href="https://ayudaenpython.com">Conoce más sobre AyudaEnPython</a></p> </article>
<script type="module">document.addEventListener("DOMContentLoaded",()=>{const i="ABCDEFGHIJKLMNOPQRSTUVWXYZ",c=["Interactivo","Moderno","Actualizado","Gratuito","Colaborativo"],d=document.querySelector("#changing_word");if(!d)return;let o=0,e=0,n=0;const l=50,A=2e3;function I(t){let r=0;n=performance.now(),cancelAnimationFrame(e);function m(s){const u=s-n;u>l&&(n=s-u%l,r+=1,d.textContent=t.split("").map((f,E)=>E<r?f:f===" "?" ":i[Math.floor(Math.random()*i.length)]).join("")),r<t.length&&(e=requestAnimationFrame(m))}e=requestAnimationFrame(m)}function a(){const t=c[o];I(t),o=(o+1)%c.length}a();const v=setInterval(()=>{document.hidden||a()},A);document.addEventListener("visibilitychange",()=>{document.hidden?cancelAnimationFrame(e):(n=0,a())}),window.addEventListener("beforeunload",()=>{clearInterval(v),cancelAnimationFrame(e)})});</script> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/ace/1.36.4/ace.js"></script> <script type="module" src="/_astro/CustomMarkdownContent.astro_astro_type_script_index_0_lang.BCCVhVM5.js"></script> <footer class="sl-flex astro-3yyafb3n"> <div class="meta sl-flex astro-3yyafb3n"> </div> </footer> </div> </div> </main> </div> </div> </div> </div> </body></html>