EUGENIA BAHIT
INTRODUCCIÓN AL
LENGUAJE PYTHON
MATERIAL DE ESTUDIO
Curso
Informes e inscripción:
: http://escuela.eugeniabahit.com |
Certificaciones
: http://python.laeci.org
I
NTRODUCCI
ÓNALL
ENGUAJ
EPYTHON
L
i
br
odees
t
udi
odel
cur
s
odel
aEs
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
©201
1–201
8Eugeni
aBahi
t
.2
Seper
mi
t
el
acopi
a,
us
oydi
s
t
r
i
buci
óndees
t
eej
empl
ar
,
baj
ol
ost
ér
mi
nosdel
a
l
i
cenci
aCr
eat
i
v
eCommonsAt
r
i
buci
ón4.
0.
Der
echosdei
mágenesdepor
t
adaycont
r
apor
t
ada:
T
odosl
osder
echosr
es
er
v
adospar
aMar
k
et
pl
aceDes
i
gner
s
.
SUMARI
O
Pr
i
meracer
cami
ent
oal
Scr
i
pt
i
ng.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
Conv
er
t
i
runs
cr
i
ptencomandodel
s
i
s
t
ema.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
Acer
cadePy
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
Gl
os
ar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
El
ement
osdel
L
enguaj
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
3
Var
i
abl
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
3
Ent
r
adays
al
i
da.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
T
i
posdedat
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
7
Oper
ador
esAr
i
t
mét
i
cos
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
7
Coment
ar
i
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
8
Codi
f
i
caci
óndecar
act
er
es(
encodi
ng)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
T
i
posdedat
oscompl
ej
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
T
upl
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
22
L
i
s
t
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
23
Di
cci
onar
i
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
23
Es
t
r
uct
ur
asdeCont
r
ol
deF
l
uj
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
I
dent
aci
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
Es
t
r
uct
ur
asdecont
r
ol
def
l
uj
ocondi
ci
onal
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
27
Es
t
r
uct
ur
asdecont
r
ol
i
t
er
at
i
v
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
Bucl
ewhi
l
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
Bucl
ef
or
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
33
F
unci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
36
F
unci
onesdef
i
ni
dasporel
us
uar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
36
Sobr
el
ospar
ámet
r
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
37
par
ámet
r
osporomi
s
i
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
Cl
av
escomoar
gument
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
39
par
ámet
r
osar
bi
t
r
ar
i
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
39
Des
empaquet
adodepar
ámet
r
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
40
L
l
amadasr
ecur
s
i
v
asyder
et
or
no.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
Sobr
el
af
i
nal
i
daddel
asf
unci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
42
I
ny
ecci
óndev
ar
i
abl
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
45
I
mpor
t
aci
óndemódul
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
46
Py
t
hon2v
sPy
t
hon3.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
50
Hackder
et
r
ocompat
i
bi
l
i
dad.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
54
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
PRI
MERACERCAMI
ENT
OALSCRI
PT
I
NG
Enpr
ogr
amaci
ón,uns
cr
i
ptesunar
chi
v
odecódi
gof
uent
econi
ns
t
r
ucci
ones
s
enci
l
l
as
,
quepuedes
erej
ecut
adoat
r
av
ésdel
al
í
neadecomandos
.Se
conocecomos
cr
i
pt
i
ngal
at
écni
cadepr
ogr
amaci
ónempl
eadapar
acr
ear
es
t
et
i
podear
chi
v
os
.
Par
aqueunar
chi
v
odecódi
gof
uent
es
eacons
i
der
adouns
cr
i
pt
,
debecumpl
i
r
l
ass
i
gui
ent
escar
act
er
í
s
t
i
cas
:
1
.Serej
ecut
abl
e.
2.Es
t
ares
cr
i
t
oenunl
enguaj
equepuedas
eri
nt
er
pr
et
adoporel
or
denador
.
3.Nodependerdeot
r
osar
chi
v
os
.
1
.Ar
chi
v
oej
ecut
abl
e
Par
aqueunar
chi
v
opuedas
erej
ecut
ado,hayqueot
or
gar
l
eper
mi
s
osde
ej
ecuci
ón:
chmod +x nombre-del-archivo
2.L
enguaj
ei
nt
er
pr
et
ado
Uns
cr
i
ptpuedes
eres
cr
i
t
oencual
qui
erl
enguaj
ei
nt
er
pr
et
ado,
s
opor
t
adoporel
Si
s
t
emaOper
at
i
v
o,
comoPy
t
hon,
Per
l
,
GNUBas
h,PHP,
Ruby
,
et
c.
Par
aqueel
s
i
s
t
emaoper
at
i
v
os
epaquéi
nt
ér
pr
et
eut
i
l
i
z
arpar
aent
endery
ej
ecut
arel
s
cr
i
pt
,
s
edebecol
ocarl
ar
ut
adedi
choi
nt
ér
pr
et
eenl
apr
i
mer
a
l
í
neadel
ar
chi
v
o,ant
ecedi
daporl
oss
í
mbol
os#!
L
oant
er
i
ors
econocecomohashbangoshebang.
-5-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Dadoquel
ar
ut
adeuni
nt
ér
pr
et
epuedes
erdi
s
t
i
nt
aenl
osdi
v
er
s
osSi
s
t
emas
Oper
at
i
v
oodi
s
t
r
i
buci
ones
,r
eal
i
z
arl
al
l
amadaal
i
nt
ér
pr
et
eat
r
av
ésdeenv
,
s
uel
es
erunapr
áct
i
cahabi
t
ual
:
#!/usr/bin/env python
Pores
t
emot
i
v
o,
uns
cr
i
ptnor
equi
er
edeunaex
t
ens
i
ónpar
apoders
er
i
nt
er
pr
et
ado.
Al
gunosej
empl
os
:
#!/usr/bin/env python
I
nt
ér
pr
et
ePy
t
hon(
v
er
s
i
ónpordef
ect
odel
s
i
s
t
ema)
#!/usr/bin/env python2
F
uer
z
aaut
i
l
i
z
arel
i
nt
ér
pr
et
edePy
t
hon2.
x
#!/usr/bin/env python3
F
uer
z
aaut
i
l
i
z
arel
i
nt
ér
pr
et
edePy
t
hon3.
x
#!/usr/bin/env bash
I
nt
ér
pr
et
edeGNUBas
h
3.Scr
i
ptv
sPr
ogr
ama
Siunar
chi
v
odecódi
gof
uent
ecumpl
eesej
ecut
abl
e,
cont
i
enel
ar
ut
adel
i
nt
ér
pr
et
eper
odependedeot
r
osar
chi
v
os
,ent
oncess
el
ocons
i
der
aun
pr
ogr
ama.
CONVERTI
RUNSCRI
PTENCOMANDODELSI
ST
EMA
Ar
chi
v
o:hol
amundo.
py
#!/usr/bin/env python2
print "Hola Mundo!"
Cr
earunar
chi
v
ol
l
amado«hol
amundo.
py
»(
conel
cont
eni
doant
er
i
or
)
,
as
i
gnar
l
eper
mi
s
osdeej
ecuci
ónypr
obarel
s
cr
i
ptenl
al
í
neadecomandos
ej
ecut
andol
as
i
gui
ent
ei
ns
t
r
ucci
ón:
-6-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
./hola-mundo.py
Ahor
a,comor
oot
,
copi
arel
ar
chi
v
oal
acar
pet
a/us
r
/bi
nconel
nombr
e«hol
amundo»:
cp hola-mundo.py /usr/bin/hola-mundo
El
s
cr
i
ptes
t
áahor
adi
s
poni
bl
epar
as
erej
ecut
adocomocomando.
usuario@equipo:~$ hola-mundo
Hola Mundo!
usuario@equipo:~$
-7-
ACERCADEPYT
HON
Dent
r
odel
osl
enguaj
esi
nf
or
mát
i
cos,Py
t
hon,
per
t
eneceal
gr
upodel
os
l
enguaj
esdepr
ogr
amaci
ónypuedes
ercl
as
i
f
i
cadocomounl
enguaj
e
i
nt
er
pr
et
ado,deal
t
oni
v
el
,mul
t
i
pl
at
af
or
ma,
det
i
padodi
námi
coy
mul
t
i
par
adi
gma.
Par
al
aes
cr
i
t
ur
adecódi
go,
yaf
i
ndeal
canz
arunmecani
s
moes
t
ándarenl
a
f
or
madepr
ogr
amar
,pr
ov
eeunasr
egl
asdeest
i
l
odef
i
ni
dasat
r
av
ésdel
a
Py
t
honEnhancementPr
opos
al
Nº8(
PEP8),ques
er
ánex
pues
t
asal
ol
ar
gode
t
odoel
l
i
br
o.
GL
OSARI
O
L
enguaj
ei
nf
or
mát
i
co:esuni
di
omaar
t
i
f
i
ci
al
ut
i
l
i
z
adoporor
denador
es
,cu
y
o
f
i
nest
r
ans
mi
t
i
ri
nf
or
maci
óndeal
goaal
gui
en.L
osl
enguaj
esi
nf
or
mát
i
cos
,
puedencl
as
i
f
i
car
s
een:a)l
enguaj
esdepr
ogr
amaci
ón(
Py
t
hon,
PHP,
Pear
l
,
C,
et
c.
)
;b)l
enguaj
esdees
peci
f
i
caci
ón(
UML
)
;c)l
enguaj
esdecons
ul
t
a(
SQL
)
;d)
l
enguaj
esdemar
cas(
HT
ML
,
XML
)
;e)l
enguaj
esdet
r
ans
f
or
maci
ón(
XSL
T
)
;f
)
pr
ot
ocol
osdecomuni
caci
ones(
HT
T
P,F
T
P)
;ent
r
eot
r
os
.
L
enguaj
edepr
ogr
amaci
ón:esunl
enguaj
ei
nf
or
mát
i
co,
di
s
eñadopar
a
ex
pr
es
arór
denesei
ns
t
r
ucci
onespr
eci
s
as
,
quedebens
erl
l
ev
adasacabopor
unacomput
ador
a.El
mi
s
mopuedeut
i
l
i
z
ar
s
epar
acr
earpr
ogr
amasque
cont
r
ol
enel
compor
t
ami
ent
of
í
s
i
cool
ógi
codeunor
denador
.Es
t
ácompues
t
o
porunas
er
i
edes
í
mbol
os
,
r
egl
ass
i
nt
áct
i
casys
emánt
i
casquedef
i
nenl
a
es
t
r
uct
ur
adel
l
enguaj
e.
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
L
enguaj
esdeal
t
oni
v
el
:s
onaquel
l
oscuy
acar
act
er
í
s
t
i
capr
i
nci
pal
,
cons
i
s
t
een
unaes
t
r
uct
ur
as
i
nt
áct
i
cays
emánt
i
cal
egi
bl
e,
acor
deal
ascapaci
dades
cogni
t
i
v
ashumanas
.Adi
f
er
enci
adel
osl
enguaj
esdebaj
oni
v
el
,s
on
i
ndependi
ent
esdel
aar
qui
t
ect
ur
adel
har
dwar
e,mot
i
v
oporel
cual
,
as
umen
may
orpor
t
abi
l
i
dad.
L
enguaj
esi
nt
er
pr
et
ados:adi
f
er
enci
adel
oscompi
l
ados
,nor
equi
er
ende
compi
l
ador
espar
as
erej
ecut
ados
,
s
i
nodei
nt
ér
pr
et
es
.Uni
nt
ér
pr
et
e,
act
úade
maner
as
i
mi
l
arauncompi
l
ador
,
conl
as
al
v
edaddequeej
ecut
ael
pr
ogr
ama
di
r
ect
ament
e,
s
i
nneces
i
daddegener
arpr
ev
i
ament
eunar
chi
v
oej
ecut
abl
e.
Ej
empl
odel
enguaj
esdepr
ogr
amaci
óni
nt
er
pr
et
adoss
onPy
t
hon,PHP,
Ruby
,
L
i
s
p,
ent
r
eot
r
os
.
Ti
padodi
námi
co:unl
enguaj
edet
i
padodi
námi
coesaquel
cu
y
asv
ar
i
abl
es
,no
r
equi
er
ens
erdef
i
ni
dasas
i
gnandos
ut
i
podedat
os
,
s
i
noqueés
t
e,s
eaut
oas
i
gnaent
i
empodeej
ecuci
ón,s
egúnel
v
al
ordecl
ar
ado.
Mul
t
i
pl
at
af
or
ma:s
i
gni
f
i
caquepuedes
eri
nt
er
pr
et
adoendi
v
er
s
osSi
s
t
emas
Oper
at
i
v
oscomoGNU/L
i
nux
,
OpenBSD,
s
i
s
t
emaspr
i
v
at
i
v
os
,
ent
r
eot
r
os
.
Mul
t
i
par
adi
gma:acept
adi
f
er
ent
espar
adi
gmas(
t
écni
cas
)depr
ogr
amaci
ón,
t
al
escomol
aor
i
ent
aci
ónaobj
et
os
,
l
apr
ogr
amaci
óni
mper
at
i
v
ayf
unci
onal
.
-1
0-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Códi
gof
uent
e:esunconj
unt
odei
ns
t
r
ucci
onesyór
denesl
ógi
cas
,
compues
t
os
deal
gor
i
t
mosques
eencuent
r
anes
cr
i
t
osenundet
er
mi
nadol
enguaj
ede
pr
ogr
amaci
ón,
l
ascual
esdebens
eri
nt
er
pr
et
adasocompi
l
adas
,
par
aper
mi
t
i
r
l
aej
ecuci
óndeunpr
ogr
amai
nf
or
mát
i
co.
-1
1-
ELEMENT
OSDELLENGUAJE
Py
t
hon,al
i
gual
quet
odol
enguaj
edepr
ogr
amaci
ón,s
ecomponedeunas
er
i
e
deel
ement
osyes
t
r
uct
ur
asquecomponens
us
i
nt
ax
i
s
.
Acont
i
nuaci
ón,s
eabar
car
ánl
ospr
i
nci
pal
esel
ement
os
.
V
ARI
ABLES
Unav
ar
i
abl
eesunes
paci
opar
aal
macenardat
osmodi
f
i
cabl
es
,
enl
amemor
i
a
del
or
denador
.
EnPy
t
hon,
unav
ar
i
abl
es
edef
i
neconl
as
i
nt
ax
i
s
:
nombre_de_la_variable = valor_de_la_variable
Cadav
ar
i
abl
e,t
i
eneunnombr
eyunv
al
or
.Es
t
eúl
t
i
mo,def
i
neel
t
i
podedat
os
del
av
ar
i
abl
e.
Ex
i
s
t
eunt
i
podees
paci
odeal
macenami
ent
odenomi
nadoconst
ant
e.Una
cons
t
ant
e,s
eut
i
l
i
z
apar
adef
i
ni
rv
al
or
esf
i
j
os
,quenor
equi
er
ans
ermodi
f
i
cados
.
EnPy
t
hon,
el
concept
odecons
t
ant
eess
i
mból
i
coy
aquet
odoes
paci
oes
v
ar
i
abl
e.
PEP8:v
ar
i
abl
es
Ut
i
l
i
z
arnombr
esdes
cr
i
pt
i
v
osyenmi
nús
cul
as
.Par
anombr
escompues
t
os
,
s
epar
arl
aspal
abr
asporgui
onesbaj
os
.Ant
esydes
puésdel
s
i
gno=
,debe
haberuno(
ys
ol
oun)es
paci
oenbl
anco
Cor
r
ect
o:mi_variable = 12
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
I
ncor
r
ect
o:MiVariable = 12 | mivariable = 12 | mi_variable=12
PEP8:const
ant
es
Ut
i
l
i
z
arnombr
esdes
cr
i
pt
i
v
osyenmay
ús
cul
ass
epar
andopal
abr
aspor
gui
onesbaj
os
.
Ej
empl
o:MI_CONSTANTE = 12
ENTRADAYSALI
DA
Par
ai
mpr
i
mi
runv
al
orenpant
al
l
a,
has
t
al
av
er
s
i
ón2.
7dePy
t
hon,
s
eut
i
l
i
z
al
a
pal
abr
acl
av
eprint:
mi_variable = 15
print mi_variable
Apar
t
i
rdel
av
er
s
i
ón3.
0dePy
t
hon,
s
eut
i
l
i
z
al
af
unci
ónprint():
mi_variable = 15
print(mi_variable)
L
oant
er
i
or
,
enamboscas
os
,i
mpr
i
meel
v
al
ordel
av
ar
i
abl
emi
_v
ar
i
abl
een
pant
al
l
a.
Par
aobt
enerdat
ossol
i
ci
t
adosalusuar
i
o,has
t
al
av
er
s
i
ón2.
7dePy
t
hon,s
e
ut
i
l
i
z
al
af
unci
ónraw_input():
mi_variable = raw_input("Ingresar un valor: ")
-1
4-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Apar
t
i
rdel
av
er
s
i
ón3.
0dePy
t
hon,
s
eut
i
l
i
z
al
af
unci
óninput(),t
ambi
én
di
s
poni
bl
eenv
er
s
i
onesant
er
i
or
es
,per
oconunf
unci
onami
ent
odi
f
er
ent
e:
mi_variable = input("Ingresar un valor: ")
-1
5-
TI
POSDEDAT
OS
Unav
ar
i
abl
epuedecont
enerv
al
or
esdedi
v
er
s
ost
i
pos
.Es
t
ost
i
poss
el
i
s
t
asa
cont
i
nuaci
ón.
Cadenadet
ext
o(
st
r
i
ng)
:
mi_cadena = "Hola Mundo!"
otra_cadena = 'Hola Mundo!'
mi_cadena_multilinea = """
Esta es una cadena
de varias lineas
"""
Númer
oent
er
o:
edad = 35
Númer
or
eal
:
precio = 35.05
Bool
eano(
v
er
dader
o/Fal
so)
:
verdadero = True
falso = False
Ex
i
s
t
enademás
,ot
r
ost
i
posdedat
osmáscompl
ej
os
,
ques
eabar
car
ánmás
adel
ant
e.
OPERADORESARI
T
MÉTI
COS
Unoper
adorar
i
t
mét
i
coesaquel
queper
mi
t
er
eal
i
z
aroper
aci
onesar
i
t
mét
i
cas
s
obr
el
asv
ar
i
abl
es
.
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Símbolo
+
*
**
/
//
%
Significado
Suma
Resta
Negación
Multiplicación
Exponente
División
División entera
Módulo
Ejemplo
a = 10 + 5
a = 12 - 7
a = -5
a = 7 * 5
a = 2 ** 3
a = 12.5 / 2
a = 12.5 // 2
a = 27 % 4
Resultado
a es 15
a es 5
a es -5
a es 35
a es 8
a es 6.25
a es 6.0
a es 3
PEP 8: operadores
Siempre colocar un espacio en blanco, antes y después de un operador
Unej
empl
os
enci
l
l
oconv
ar
i
abl
esyoper
ador
esar
i
t
mét
i
cos
:
monto_bruto = 175
tasa_interes = 12.5
monto_interes = monto_bruto * tasa_interes / 100
tasa_bonificacion = 5.0
importe_bonificacion = monto_bruto * tasa_bonificacion / 100
monto_neto = (monto_bruto - importe_bonificacion) + monto_interes
COMENT
ARI
OS
Enunar
chi
v
odecódi
gof
uent
e,
uncoment
ar
i
oesunt
ex
t
oex
pl
i
cat
i
v
oqueno
espr
oces
adoporel
i
nt
ér
pr
et
eys
ol
ot
i
eneunaut
i
l
i
dadhumana(
no
i
nf
or
mát
i
ca)
.L
oscoment
ar
i
ospuedens
erdeunaov
ar
i
asl
í
neas
:
# Esto es un comentario de una sola línea
mi_variable = 15
"""Y este es un comentario
de varias líneas"""
mi_variable = 15
mi_variable = 15 # Este es un comentario en línea
Enl
oscoment
ar
i
os
,
puedeni
ncl
ui
r
s
epal
abr
asquer
epr
es
ent
enacci
ones
:
# TODO esto es algo por hacer
# FIXME esto es algo que debe corregirse (un fallo)
# XXX esto es algo que debe corregirse (error crítico)
-1
8-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
PEP8:coment
ar
i
os
Coment
ar
i
osenl
ami
s
mal
í
neadel
códi
godebens
epar
ar
s
econdos
es
paci
osenbl
anco.L
uegodel
s
í
mbol
o#debei
runs
ol
oes
paci
oenbl
anco.
Cor
r
ect
o:a = 15
# Edad de María
I
ncor
r
ect
o:a = 15 # Edad de María
-1
9-
CODI
FI
CACI
ÓNDECARACT
ERES(
ENCODI
NG)
Env
er
s
i
onesant
er
i
or
esaPy
t
hon3.
0,
l
aes
peci
f
i
caci
óndel
acodi
f
i
caci
ónde
car
act
er
esaempl
ear
s
e(
cuandoés
t
anoesASCI
I
)
,
r
es
ul
t
aobl
i
gat
or
i
a.
Apar
t
i
rdel
av
er
s
i
ón3.
0,
es
t
adecl
ar
aci
ónesopci
onal
.
# -*- coding: utf-8 -*-
ut
f
8podr
í
as
ercual
qui
erot
r
acodi
f
i
caci
óndecar
act
er
es
.Pordef
ect
o,
v
er
s
i
onesant
er
i
or
esaPy
t
hon3,
ut
i
l
i
z
anl
acodi
f
i
caci
ónASCI
I
como
pr
edet
er
mi
nada.Encas
odeempl
earcar
act
er
esnoASCI
I
env
er
s
i
ones
ant
er
i
or
esal
a3.
0,
Py
t
hongener
ar
áuner
r
or
:
variable = "En el Ñágara encontré un Ñandú"
SyntaxError: Non-ASCII character[...]
I
ndi
candoelencodi
ngadecuado,
el
ar
chi
v
os
eej
ecut
ar
áconéx
i
t
o:
# -*- coding: utf-8 -*variable = "En el Ñágara encontré un Ñandú"
TI
POSDEDAT
OSCOMPLEJOS
Py
t
hon,pos
eeademásdel
ost
i
posy
av
i
s
t
os
,3t
i
posmáscompl
ej
os
,que
admi
t
enunacol
ecci
óndedat
os
.Es
t
ost
i
poss
on:
• T
upl
as
• L
i
s
t
as
• Di
cci
onar
i
os
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Es
t
ost
r
est
i
pos
,
puedenal
macenarcol
ecci
onesdedat
osdedi
v
er
s
ost
i
posys
e
di
f
er
enci
anpors
us
i
nt
ax
i
syporl
af
or
maenl
acual
l
osdat
ospuedens
er
mani
pul
ados
.
TUPLAS
Unat
upl
aesunav
ar
i
abl
equeper
mi
t
eal
macenarv
ar
i
osdat
osi
nmut
abl
es
(
nopuedens
ermodi
f
i
cadosunav
ezcr
eados
)
,
yes
t
osdat
ospuedens
erde
t
i
posdi
f
er
ent
es
:
mi_tupla = ('cadena de texto', 15, 2.8, 'otro dato', 25)
Sepuedeaccederacadaunodel
osdat
osmedi
ant
es
uí
ndi
ce
cor
r
es
pondi
ent
e.El
í
ndi
ces
ecor
r
es
pondeconl
apos
i
ci
óndel
el
ement
oenl
a
col
ecci
ón,
s
i
endo0(
cer
o)
,
el
í
ndi
cedel
pr
i
merel
ement
o:
mi_tupla[1]
# Salida: 15
T
ambi
éns
epuedeaccederaunapor
ci
óndel
at
upl
a,
i
ndi
cando
(
opci
onal
ment
e)des
deel
í
ndi
cedei
ni
ci
ohas
t
ael
í
ndi
cedef
i
n:
mi_tupla[1:4]
mi_tupla[3:]
mi_tupla[:2]
# Devuelve: (15, 2.8, 'otro dato')
# Devuelve: ('otro dato', 25)
# Devuelve: ('cadena de texto', 15)
Ot
r
af
or
madeaccederal
at
upl
adef
or
mai
nv
er
s
a(
deat
r
áshaci
aadel
ant
e)
,
escol
ocandouní
ndi
cenegat
i
v
o:
mi_tupla[-1]
mi_tupla[-2]
# Salida: 25
# Salida: otro dato
-22-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
LI
ST
AS
Unal
i
s
t
aess
i
mi
l
araunat
upl
aent
odosl
osas
pect
os
.L
adi
f
er
enci
ar
adi
caen
quel
osel
ement
osdeunal
i
s
t
as
í
puedens
ermodi
f
i
cados
:
mi_lista = ['cadena de texto', 15, 2.8, 'otro dato', 25]
Al
asl
i
s
t
ass
eaccedei
gual
queal
ast
upl
as
,
pors
unúmer
odeí
ndi
ce:
mi_lista[1]
mi_lista[1:4]
mi_lista[-2]
# Salida: 15
# Devuelve: [15, 2.8, 'otro dato']
# Salida: otro dato
L
asl
i
s
t
anos
oni
nmut
abl
es
:per
mi
t
enmodi
f
i
carl
osdat
osunav
ezcr
eados
:
mi_lista[2] = 3.8
# el tercer elemento ahora es 3.8
Al
poders
ermodi
f
i
cadas
,
l
asl
i
s
t
as
,adi
f
er
enci
adel
ast
upl
as
,
per
mi
t
enagr
egar
nuev
osv
al
or
es
:
mi_lista.append('Nuevo Dato')
DI
CCI
ONARI
OS
L
osdi
cci
onar
i
os
,al
i
gual
quel
ast
upl
asyl
asl
i
s
t
as
,
s
oncol
ecci
ones
.L
a
di
f
er
enci
acones
t
os
,
esquemi
ent
r
asquel
osel
ement
osdel
asl
i
s
t
asyl
ast
upl
as
s
eas
oci
anaunnúmer
odeí
ndi
ce(
opos
i
ci
ón)
,l
osv
al
or
esdeundi
cci
onar
i
os
e
as
oci
anaunnombr
edecl
av
e:
mi_diccionario = {
'clave_1': valor_1,
'clave_2': valor_2,
'clave_7': valor_7
}
mi_diccionario['clave_2']
# Salida: valor_2
-23-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Undi
cci
onar
i
oper
mi
t
eel
i
mi
narcual
qui
erent
r
ada:
del(mi_diccionario['clave_2'])
Al
i
gual
quel
asl
i
s
t
as
,el
di
cci
onar
i
oper
mi
t
emodi
f
i
carl
osv
al
or
es
:
mi_diccionario['clave_1'] = 'Nuevo Valor'
Yt
ambi
énespos
i
bl
eagr
egarnuev
osel
ement
os
,
as
i
gnandov
al
or
esanuev
as
cl
av
es
:
mi_diccionario['nueva_clave'] = 'nuevo elemento'
-24-
EST
RUCTURASDECONT
ROLDEFL
UJO
Unaes
t
r
uct
ur
adecont
r
ol
esunbl
oquedecódi
gof
uent
equeper
mi
t
eagr
upar
i
ns
t
r
ucci
onesdef
or
macont
r
ol
ada.Acont
i
nuaci
óns
edes
cr
i
bi
r
ándost
i
posde
es
t
r
uct
ur
asdecont
r
ol
:
1
.Est
r
uct
ur
asdecont
r
olcondi
ci
onal
es:cont
r
ol
anel
f
l
uj
odel
osdat
osa
par
t
i
rdecondi
ci
ones
.
2.Est
r
uct
ur
asdecont
r
oli
t
er
at
i
v
as:cont
r
ol
anel
f
l
uj
odel
osdat
os
,
ej
ecut
andounami
s
maacci
óndef
or
mar
epet
i
da.
I
DENT
ACI
ÓN
EnPy
t
hon,
l
ases
t
r
uct
ur
asdecont
r
ol
s
edel
i
mi
t
ans
obr
el
abas
edebl
oquesde
códi
goi
dent
ados
.Enunl
enguaj
ei
nf
or
mát
i
co,
s
el
l
amai
dent
aci
ónal
s
angr
ado
del
códi
gof
uent
e.
Not
odosl
osl
enguaj
esdepr
ogr
amaci
ón,
necesi
t
andeunai
dent
aci
ón,
aunques
í
s
ees
t
i
l
ai
mpl
ement
ar
l
a,
af
i
ndeot
or
garmay
orl
egi
bi
l
i
dadal
códi
go
f
uent
e.EnelcasodePy
t
hon,
l
ai
dent
aci
ónesobl
i
gat
or
i
a,
y
aquedeel
l
a,
depender
ás
ues
t
r
uct
ur
ayl
af
or
madecont
r
ol
arl
ai
nf
or
maci
ón.
PEP8:i
dent
aci
ón
Unai
dent
aci
ónde4(
cuat
r
o)espaci
osenbl
anco,
i
ndi
car
áquel
as
i
ns
t
r
ucci
onesi
dent
adas
,
f
or
manpar
t
edeunami
s
maes
t
r
uct
ur
adecont
r
ol
.
Unaes
t
r
uct
ur
adecont
r
ol
,ent
onces
,
s
edef
i
nedel
as
i
gui
ent
ef
or
ma:
inicio de la estructura de control:
expresiones
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
ESTRUCTURASDECONTROLDEFL
UJOCONDI
CI
ONALES
L
ases
t
r
uct
ur
asdecont
r
ol
condi
ci
onal
ess
onaquel
l
asqueper
mi
t
enev
al
uars
i
unaomáscondi
ci
oness
ecumpl
en,par
adeci
rquéacci
ónej
ecut
ar
.
L
ascondi
ci
onesseev
al
úancomov
er
dader
asof
al
sas.O l
acondi
ci
óns
e
cumpl
e(
l
acondi
ci
ónesv
er
dader
a)
,
ol
acondi
ci
ónnos
ecumpl
e(
l
acondi
ci
ón
esf
al
s
a)
.
Enl
av
i
dadi
ar
i
a,
t
odaper
s
onaact
úadeacuer
doal
aev
al
uaci
ónde
condi
ci
ones
,s
ol
oquenos
i
empr
es
ehacedef
or
maex
pl
í
ci
t
aoev
i
dent
e.
Porej
empl
o:
Siel
s
emáf
or
oes
t
áenv
er
de,
cr
uz
arl
acal
l
e.Si
no,
es
per
araqueel
s
emáf
or
os
epongaenv
er
de.
Enocas
i
ones
,
s
eev
al
úamásdeunacondi
ci
ónpar
al
l
egaraej
ecut
arl
ami
s
ma
acci
ón:
Siel
s
emáf
or
oes
t
áenv
er
deonohayv
ehí
cul
osci
r
cul
ando,cr
uz
arl
acal
l
e.
Si
no,es
per
araqueel
s
emáf
or
os
epongaenv
er
de.
Par
ades
cr
i
bi
rl
aev
al
uaci
ónar
eal
i
z
ars
obr
eunacondi
ci
ón,
s
eut
i
l
i
z
an
oper
ador
esr
el
aci
onal
esodecompar
aci
ón:
Símbolo
==
!=
Significado
Igual que
Distinto que
Ejemplo
5 == 7
rojo != verde
-27-
Resultado
Falso
Verdadero
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
<
>
<=
>=
Menor que
Mayor que
Menor o igual que
Mayor o igual que
8 < 12
7 > 12
12 <= 12
4 >= 5
Verdadero
Falso
Verdadero
Falso
Par
aev
al
uarmásdeunacondi
ci
óns
i
mul
t
áneament
e,
s
eut
i
l
i
z
anoper
ador
es
l
ógi
cos:
Operador
and (y)
or (o)
xor
(o excluyente)
Ejemplo
5 == 7 and 7 < 12
9 < 12 and 12 > 7
9 < 12 and 12 > 15
12 == 12 or 15 < 7
7 > 5 or 9 < 12
4 == 4 xor 9 > 3
4 == 4 xor 9 < 3
Resultado*
0 y 0
1 y 1
1 y 0
1 o 0
1 o 1
1 o 1
1 o 0
Falso
Verdadero
Falso
Verdadero
Verdadero
Falso
Verdadero
(
*)1i
ndi
car
es
ul
t
adov
er
dader
odel
acondi
ci
ón,mi
ent
r
asque0,i
ndi
caf
al
s
o.
L
ases
t
r
uct
ur
asdecont
r
ol
def
l
uj
ocondi
ci
onal
es
,
s
edef
i
nenmedi
ant
eel
us
ode
t
r
espal
abr
ascl
av
esr
es
er
v
adas
,
del
l
enguaj
e:if (
s
i
)
,elif (
s
i
no,s
i
)yelse
(
s
i
no)
.
Al
gunosej
empl
os
:
Si
s
emáf
or
oes
t
áenv
er
de,
cr
uz
ar
.Si
no,
es
per
ar
.
if semaforo == verde:
cruzar()
else:
esperar()
-28-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Enel
ej
empl
oant
er
i
or
,cr
uz
aryes
per
ars
ondosacci
ones(
v
er
bos
)
.L
osv
er
boso
acci
ones
,
enpr
ogr
amaci
ón,
s
edenomi
nanf
unci
onesys
i
nt
áct
i
cament
e,
s
el
as
di
f
er
enci
adel
asv
ar
i
abl
espores
t
aracompañadasdeunpardepar
ént
es
i
s
.L
as
f
unci
oness
er
ánabar
cadasmásadel
ant
e.
Si
gas
t
ohas
t
a$1
00,pagocondi
ner
oenef
ect
i
v
o.Si
no,
s
igas
t
omásde$1
00
per
omenosde$300,
pagocont
ar
j
et
adedébi
t
o.Si
no,
pagocont
ar
j
et
ade
cr
édi
t
o.
if gasto <= 100:
pagar_en_efectivo()
elif gasto > 100 and gasto < 300:
pagar_con_debito()
else:
pagar_con_credito()
Si
l
acompr
aesmay
ora$1
00,obt
engoundes
cuent
odel
1
0%
descuento = 0
if compra > 100:
descuento = compra * 0.10
-29-
ESTRUCTURASDECONTROLI
T
ERATI
V
AS
L
ases
t
r
uct
ur
asdecont
r
ol
i
t
er
at
i
v
as(
t
ambi
énl
l
amadascí
cl
i
casobucl
es
)
,
per
mi
t
enej
ecut
arunmi
s
mocódi
go,
def
or
mar
epet
i
da,ncant
i
daddev
eces
mi
ent
r
ass
ecumpl
aunacondi
ci
ón.
Py
t
hondi
s
ponedoses
t
r
uct
ur
asdecont
r
ol
i
t
er
at
i
v
as
:
• El
bucl
ewhi
l
e
• El
bucl
ef
or
BUCLEWHI
LE
Es
t
ebucl
es
eencar
gadeej
ecut
arunami
s
maacci
ónmi
ent
r
asqueuna
det
er
mi
nadacondi
ci
óns
ecumpl
a:
Mi
ent
r
asqueaños
eamenoroi
gual
a201
2,i
mpr
i
mi
rl
af
r
as
e“
I
nf
or
mesde
<año>”
.
#!/usr/bin/env python2
# -*- coding: utf-8 -*year = 2001
while year <= 2012:
print "Informes de”, year
year += 1
L
ai
t
er
aci
ónant
er
i
or
,
gener
ar
ál
as
i
gui
ent
es
al
i
da:
Informes de 2001
Informes de 2002
Informes de 2003
Informes de 2004
Informes de 2005
Informes de 2006
Informes de 2007
Informes de 2008
Informes de 2009
Informes de 2010
Informes de 2011
Informes de 2012
Obs
er
v
arl
aúl
t
i
mal
í
nea:
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
year += 1
Encadai
t
er
aci
óns
ei
ncr
ement
aen1(
uno)el
v
al
ordel
av
ar
i
abl
eyear que
condi
ci
onael
bucl
e.Si
nos
ei
ncr
ement
as
ees
t
av
ar
i
abl
e,s
uv
al
ors
i
empr
es
er
í
a
i
gual
a2001 yporl
ot
ant
o,
el
bucl
es
eej
ecut
ar
í
adef
or
mai
nf
i
ni
t
a,y
aquel
a
condi
ci
ónyear <= 2012 s
i
empr
es
ees
t
ar
í
acumpl
i
endo.
Not
aci
ónBNF(
BakusNaurFor
m)
Esunf
or
mat
out
i
l
i
z
adoenpr
ogr
amaci
ónei
nf
or
mát
i
caengener
al
,
par
a
document
arex
pr
es
i
onesl
ógi
cas
.El
us
ode:
<nombre>
i
ndi
caquedondeapar
ece<nombr
e>deber
ár
eempl
az
ar
s
edi
cho
modi
f
i
cador
,porel
v
al
ordeunel
ement
oquer
epr
es
ent
eunnombr
e.Por
ej
empl
o:
<Apellido>, <Nombre>
Podr
í
ar
eempl
az
ar
s
epor
:
Bahit, Eugenia
Romperunbucl
e
Cuandoel
v
al
orquecondi
ci
onal
ai
t
er
aci
ónnopuedei
ncr
ement
ar
s
e,
puede
r
omper
s
eel
bucl
emedi
ant
el
ai
ns
t
r
ucci
ónbr
eakpr
ecedi
dadeuncondi
ci
onal
:
while True:
nombre = raw_input("Indique su nombre: ")
if nombre:
break
-32-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
El
bucl
eant
er
i
or
,
i
ncl
uy
euncondi
ci
onal
ani
dadoquev
er
i
f
i
cas
i
l
av
ar
i
abl
e
nombr
eesv
er
dader
a(
s
ol
os
er
áv
er
dader
as
i
el
us
uar
i
oapor
t
aundat
ocuando
l
eess
ol
i
ci
t
adoenpant
al
l
a)
.Si
esv
er
dader
a,
el
bucl
es
er
ompe(
br
eak
)
.Si
no,
s
egui
r
áej
ecut
ándos
ehas
t
aqueel
us
uar
i
oi
ngr
es
eundat
ocuandol
ees
s
ol
i
ci
t
ado.
BUCLEFOR
El
bucl
ef
ordePy
t
hon,esaquél
quef
aci
l
i
t
al
ai
t
er
aci
óns
obr
el
osel
ement
osde
unat
upl
aol
i
s
t
a.El
bucl
ef
ors
i
empr
es
eut
i
l
i
z
ar
ás
obr
eunal
i
s
t
aot
upl
a,
de
f
or
mat
al
queencadai
t
er
aci
ón,
s
epuedanej
ecut
arl
asmi
s
maacci
oness
obr
e
cadaunodel
osel
ement
osdel
al
i
s
t
aot
upl
a.
Porcadael
ement
oenmi
_l
i
s
t
a,
i
mpr
i
mi
rel
el
ement
o
#!/usr/bin/env python3
mi_lista = ['Juan', 'Antonio', 'Pedro', 'Ana']
for elemento in mi_lista:
print(elemento)
Porcadacol
orenmi
_t
upl
a,
i
mpr
i
mi
rcol
or
#!/usr/bin/env python3
mi_tupla = ('rosa', 'verde', 'celeste', 'amarillo')
for color in mi_tupla:
print(color)
-33-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Enl
osej
empl
osant
er
i
or
es
,el
ement
oycol
or
,s
ondosv
ar
i
abl
esdecl
ar
adasen
t
i
empodeej
ecuci
ón(
esdeci
r
,
s
edecl
ar
andi
námi
cament
edur
ant
eel
bucl
ey
s
es
obr
es
cr
i
benencadai
t
er
aci
ón)
,as
umi
endocomov
al
or
,
el
decada
el
ement
odel
al
i
s
t
a(
ot
upl
a)encadai
t
er
aci
ón.
Ot
r
af
or
madei
t
er
arconel
bucl
ef
or
,puedeemul
arawhi
l
e:
Porcadaañoenel
r
ango2001a201
3,
i
mpr
i
mi
rl
af
r
as
e“
I
nf
or
mesde<año>”
.
for year in range(2001, 2013):
print "Informes de", year
-34-
FUNCI
ONES
Unaf
unci
ónesunaf
or
madeagr
uparex
pr
es
i
onesyal
gor
i
t
mosdef
or
mat
al
que
es
t
osquedencont
eni
dosdent
r
ode«unacáps
ul
a»,
ques
ol
opuedaej
ecut
ar
s
e
cuandoel
pr
ogr
amadorl
ai
nv
oque.Unav
ezqueunaf
unci
ónesdef
i
ni
da,
puede
s
eri
nv
ocadat
ant
asv
ecescomos
eaneces
ar
i
o.
Funci
onesi
ncor
por
adas
Unaf
unci
ónpuedes
erpr
ov
i
s
t
aporel
l
enguaj
eodef
i
ni
daporel
us
uar
i
o.Al
as
f
unci
onespr
ov
i
s
t
asporel
l
enguaj
es
el
asdenomi
na«f
unci
onesi
ncor
por
adas
»y
eni
ngl
éss
econocencomo«Bui
l
t
i
nf
unct
i
ons
».
FUNCI
ONESDEFI
NI
DASPORELUSUARI
O
EnPy
t
honl
adef
i
ni
ci
óndef
unci
oness
er
eal
i
z
amedi
ant
el
ai
ns
t
r
ucci
óndef más
unnombr
edef
unci
óndes
cr
i
pt
i
v
opar
ael
cuál
,
apl
i
canl
asmi
s
masr
egl
asque
par
ael
nombr
edel
asv
ar
i
abl
es
-s
egui
dodepar
ént
es
i
sdeaper
t
ur
ayci
er
r
e.
Comot
odaes
t
r
uct
ur
adecont
r
ol
enPy
t
hon,l
adef
i
ni
ci
óndel
af
unci
ónf
i
nal
i
z
a
condospunt
os(
:
)yel
al
gor
i
t
moquel
acompone,
i
r
ái
dent
adocon4es
paci
os
enbl
anco:
def mi_funcion():
# aquí el algoritmo identado
Unaf
unci
ónnoesej
ecut
adahas
t
at
ant
onos
eai
nv
ocada.Par
ai
nv
ocaruna
f
unci
ón,
s
i
mpl
ement
es
el
al
l
amapors
unombr
e:
def mi_funcion():
print "Hola Mundo"
funcion()
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
L
asf
unci
onespuedenr
et
or
nardat
os:
def funcion():
return "Hola Mundo"
Yel
v
al
order
et
or
nodeunaf
unci
ónpuedeal
macenar
seenunav
ar
i
abl
e:
frase = funcion()
I
mpr
i
mi
r
se:
print funcion()
Oi
gnor
ar
se:
funcion()
SOBREL
OSP
ARÁMETROS
Unpar
ámet
r
oesunv
al
orquel
af
unci
ónes
per
ar
eci
bi
rcuandos
eal
l
amada
(
i
nv
ocada)
.Unaf
unci
ónpuedees
per
arunoomáspar
ámet
r
os(
ques
on
def
i
ni
dosent
r
el
ospar
ént
es
i
sys
epar
adosporunacoma)oni
nguno.
def mi_funcion(param1, param2):
pass
L
ai
ns
t
r
ucci
ónpasss
eut
i
l
i
z
apar
acompl
et
arunaes
t
r
uct
ur
adecont
r
ol
que
nor
eal
i
z
ani
ngunaacci
ón.
L
ospar
ámet
r
osqueunaf
unci
ónes
per
a,
s
er
ánut
i
l
i
z
adosporés
t
a,
dent
r
odes
u
al
gor
i
t
mo,
amododev
ar
i
abl
esdeámbi
t
ol
ocal
.Esdeci
r
,
quel
ospar
ámet
r
os
s
er
ánv
ar
i
abl
esl
ocal
esques
ol
os
onacces
i
bl
esdent
r
odel
af
unci
ón:
-37-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
def calcular_neto(bruto, alicuota):
iva = bruto * float(alicuota) / 100
neto = bruto + iva
return neto
Sis
e qui
s
i
er
aaccederaes
asv
ar
i
abl
esl
ocal
esf
uer
adel
ámbi
t
odel
af
unci
ón,
s
eobt
endr
í
auner
r
or
:
def calcular_neto(bruto, alicuota):
iva = bruto * float(alicuota) / 100
neto = bruto + iva
return neto
print bruto
# Retornará el error: NameError: name 'bruto' is not defined
Al
l
l
amaraunaf
unci
ón,sel
edebenpasarsusar
gument
osenelmi
smo
or
denenelquel
osesper
a.Par
aev
i
t
arpas
ar
l
osenel
mi
s
moor
den,
pueden
ut
i
l
i
z
ar
s
ecl
av
escomoar
gument
os(
def
i
ni
dosmásabaj
o)
.
P
ARÁMETROSPOROMI
SI
ÓN
Espos
i
bl
eas
i
gnarv
al
or
espordef
ect
oal
ospar
ámet
r
osdel
asf
unci
ones
.Es
t
o
s
i
gni
f
i
ca,quel
af
unci
ónpodr
ás
erl
l
amadaconmenosar
gument
osdel
osque
hadef
i
ni
do:
def calcular_neto(bruto, alicuota=21):
iva = bruto * float(alicuota) / 100
neto = bruto + iva
return neto
calcular_neto(100)
calcular_neto(100, 10.5)
# Retorna 121.0
# Retorna 110.5
PEP8:Funci
ones
Al
adef
i
ni
ci
óndeunaf
unci
ónl
adebenant
ecederdosl
í
neasenbl
anco.
-38-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Al
as
i
gnarpar
ámet
r
osporomi
s
i
ón,
nodebedej
ar
s
ees
paci
osenbl
anconi
ant
esnides
puésdel
s
i
gno=
.
L
ospar
ámet
r
osporomi
s
i
óndebens
erdef
i
ni
dosacont
i
nuaci
óndel
os
par
ámet
r
osobl
i
gat
or
i
os
.
CLAVESCOMOARGUMENT
OS
L
ascl
av
escomoar
gument
os(
k
ewor
dar
gument
s
)s
onunacar
act
er
í
s
t
i
cade
Py
t
honquenot
odosl
osl
enguaj
espos
een.Py
t
honper
mi
t
el
l
amaraunaf
unci
ón
pas
ándol
el
osar
gument
oses
per
adoscomopar
esdeclaves=valor:
def funcion(obligatorio1, opcional='valor opcional', opcional_dos=15):
pass
funcion('valor obligatorio', opcional_dos=43)
P
ARÁMETROSARBI
TRARI
OS
Espos
i
bl
equeunaf
unci
ónes
per
er
eci
bi
runnúmer
oar
bi
t
r
ar
i
odes
conoci
dodear
gument
os
.Es
t
osar
gument
os
,
l
l
egar
ánal
af
unci
ónenf
or
madet
upl
a.
Par
adef
i
ni
rar
gument
osar
bi
t
r
ar
i
osenunaf
unci
ón,s
eant
ecedeunas
t
er
i
s
co(
*)
al
nombr
edel
par
ámet
r
o:
def funcion(obligatorio, *arbitrarios):
pass
funcion('fijo', 1, 2, 3, 4, 5)
funcion('fijo', 1, 2)
funcion('fijo', 1, 2, 3, 4, 5, 6, 7)
funcion('fijo')
-39-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Cuandounaf
unci
ónes
per
ar
eci
bi
rpar
ámet
r
osobl
i
gat
or
i
osyar
bi
t
r
ar
i
os
,l
os
ar
bi
t
r
ar
i
ossi
empr
edebensucederal
osobl
i
gat
or
i
os.
Espos
i
bl
et
ambi
én,
obt
enerpar
ámet
r
osar
bi
t
r
ar
i
oscomopar
esdecl
av
e=
v
al
or
.
Enes
t
oscas
os
,
al
nombr
edel
par
ámet
r
odebenpr
eceder
l
odosas
t
er
i
s
cos(
**)
:
def funcion(obligatorio, **arbitrarios):
pass
funcion('fijo', a=1, b=2, c=3)
El
r
ecor
r
i
dodel
ospar
ámet
r
osar
bi
t
r
ar
i
osescomoel
r
ecor
r
i
dodecual
qui
er
t
upl
a(
par
apar
ámet
r
osar
bi
t
r
ar
i
oss
i
ncl
av
e)odecual
qui
erdi
cci
onar
i
o(
par
a
l
ospar
ámet
r
osar
bi
t
r
ar
i
osconcl
av
e)
:
def funcion(*arbitrarios):
for argumento in arbitrarios:
pass
def funcion(**arbitrarios):
for argumento in arbitrarios:
valor = arbitrarios[argumento]
DESEMP
AQUET
ADODEP
ARÁMETROS
Al
i
nv
ocaraunaf
unci
óns
el
epuedenpas
arl
ospar
ámet
r
osquees
per
adent
r
o
deunal
i
s
t
aodeundi
cci
onar
i
o(
dondel
osnombr
esdel
ascl
av
esequi
v
al
enal
nombr
edel
osar
gument
os
)
.Aes
t
epr
ocedi
mi
ent
os
el
oconocecomo
des
empaquet
adodepar
ámet
r
os
:
def funcion(uno, dos, tres):
pass
# DESEMPAQUETADO DE LISTAS
parametros = [1, 2, 3]
calcular(*parametros)
# DESEMPAQUETADO DE DICCIONARIOS
-40-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
parametros = dict(uno=1, dos=2, tres=3)
calcular(**parametros)
parametros = {'uno': 1, 'dos': 2, 'tres': 3}
calcular(**parametros)
LLAMADASRECURSI
V
ASYDERET
ORNO
Unaf
unci
ónpuedel
l
amaraot
r
af
unci
ónquer
et
or
neunv
al
or
.Es
t
os
econoce
comol
l
amadader
et
or
no:
def retornar(algo):
return str(algo)
def llamar():
algo = retornar()
L
al
l
amadai
nt
er
naaot
r
af
unci
ónpuedeal
macenar
s
e,r
et
or
nar
s
eoi
gnor
ar
s
e.
def almacenar():
algo = retornar()
def volver_a_retornar():
return retornar()
def ignorar():
retornar()
Cuandol
al
l
amaques
ehaceesal
ami
s
maf
unci
ónques
el
l
ama,
s
econoce
comol
l
amadar
ecur
si
v
a.
def get_nombre():
nombre = raw_input("Nombre: ")
if not nombre:
get_nombre()
-41-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
SOBRELAFI
NALI
DADDELASFUNCI
ONES
Unaf
unci
ónpuedet
enercual
qui
ert
i
podeal
gor
i
t
moycual
qui
ercant
i
dadde
i
ns
t
r
ucci
ones
.Si
nembar
go,unabuenapr
áct
i
cai
ndi
caquel
af
i
nal
i
daddeuna
f
unci
ón,
debes
err
eal
i
z
arunaúni
caacci
ón.
-42-
I
NYECCI
ÓNDEV
ARI
ABLES
Unav
ar
i
abl
es
e«i
n
y
ect
a» enunacadenadet
ex
t
ohaci
endoques
uv
al
orpas
e
af
or
marpar
t
edel
acadena.Es
t
os
ehacemedi
ant
eunaoper
aci
ónde
f
or
mat
o.Es
t
oesneces
ar
i
ocuandol
acadenaas
eri
ny
ect
adadebecont
ener
dat
osques
onv
ar
i
abl
es
.
Par
ai
ny
ect
arv
ar
i
abl
esdent
r
odecadenas
,
l
ascadenasdebens
erpr
epar
adas
medi
ant
eel
us
odemodi
f
i
cador
es
.Unmodi
f
i
cadorpuedes
erunpardel
l
av
es
v
ací
as{
}ounpardel
l
av
esconnombr
e{
nombr
e}
.
cadena = "Cadena preparada para recibir dos datos variables: {} y {}."
L
ami
s
macadenaconmodi
f
i
cador
esconnombr
e:
cadena = "Cadena preparada para recibir dos datos variables: {dato1} y {dato2}."
L
uego,
s
edaf
or
mat
oal
acadenapas
andounal
i
s
t
adev
ar
i
abl
esques
er
án
enl
az
adasacadamodi
f
i
cador
:
cadena = "Cadena preparada para recibir dos datos variables: {} y {}."
resultado = cadena.format(variable1, variable2)
Ys
i
t
i
enemodi
f
i
cador
esconnombr
e:
cadena = "Cadena preparada para recibir dos datos variables: {dato1} y {dato2}."
resultado = cadena.format(dato1=variable1, dato2=variable2)
L
af
unci
ónf
or
mat
(
)esunmét
ododel
obj
et
os
t
r
i
ng.L
osmét
odoss
onf
unci
ones
.
L
osobj
et
os
,
v
ar
i
abl
esdeunt
i
podedat
osmáscompl
ej
o.T
odoes
t
os
er
á
abar
cadoenpr
of
undi
dad,
enl
oscu
r
s
osdeScr
i
pt
i
ng.
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
I
MPORT
ACI
ÓNDEMÓDUL
OS
Módul
o.EnPy
t
hons
econs
i
der
amódul
oacual
qui
erar
chi
v
o.
py
.
Paquet
e.EnPy
t
hons
econs
i
der
apaquet
eesunacar
pet
aquecont
i
ene
módul
os
,yunar
chi
v
o__init__.py quepuedees
t
ar(
ono)v
ací
o.
.
└── paquete
├── __init__.py
├── modulo1.py
├── modulo2.py
└── modulo3.py
Espaci
odenombr
es
L
ai
mpor
t
aci
óndemódul
osypaquet
ess
er
eal
i
z
aat
r
av
ésdeles
paci
ode
nombr
es
,el
cual
es
t
ar
ádet
er
mi
nadoporl
ar
ut
adel
ar
chi
v
oi
mpor
t
ar(
s
eomi
t
en
l
asex
t
ens
i
ones.
pyyl
asbar
r
asdi
agonal
ess
ons
us
t
i
t
ui
dasporunpunt
o)
,t
al
que
s
i
l
ar
ut
adeunar
chi
v
oesf
oo/bar
/baz
.
pys
ues
paci
odenombr
es
er
á
f
oo.
bar
.
baz
Rut
adei
ncl
usi
ón
Py
t
hon,enpr
i
merl
ugarbus
car
ál
osar
chi
v
osenl
asr
ut
asdei
mpor
t
aci
ón
pr
opi
as
,
yens
egundol
ugar
,enel
di
r
ect
or
i
odes
deel
cual
s
ees
t
éej
ecut
andoel
s
cr
i
pt
.
I
mpor
t
aci
ónt
ot
alypar
ci
al
I
mpor
t
arunmódul
os
i
gni
f
i
cai
ncl
ui
rel
cont
eni
dodeunar
chi
v
odent
r
odeot
r
o.
-46-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Sepuedeni
mpor
t
armódul
oscompl
et
osos
ol
oel
ement
ospar
ci
al
escomo
v
ar
i
abl
es
,f
unci
ones
,
et
c.
Par
ai
mpor
t
arunmódul
ocompl
et
os
eut
i
l
i
z
al
apal
abr
acl
av
ei
mpor
tmi
ent
r
as
quepar
ai
mpor
t
arel
ement
oss
eut
i
l
i
z
al
adupl
af
r
om /i
mpor
t
:
import modulo
import paquete.modulo
import paquete.subpaquete.modulo
from modulo import variable
from modulo import variable, funcion
from modulo import *
El
ast
er
i
scoequi
v
al
eai
mpor
t
art
odosl
osel
ement
oscont
eni
dosenunmódul
o
aunquenoesi
gual
quei
mpor
t
arel
módul
ocompl
et
o.Suus
oes
t
á
desaconsej
adoenl
asPEP8.
import modulo
from modulo import *
# para llamar a 'A' dentro de modulo: modulo.A
# para llamar a 'A' dentro de modulo: A
L
osmódul
osai
mpor
t
arpuedens
erar
chi
v
ospr
opi
os(
enes
ecas
o,
s
econv
i
er
t
e
el
s
cr
i
ptenunpr
ogr
ama)omódul
osdel
al
i
br
er
í
aest
ándardePy
t
hon
(
abar
cadosenel
cur
s
odeScr
i
pt
i
ng)
.
PEP8:i
mpor
t
aci
ón
L
ai
mpor
t
aci
óndemódul
osdeber
eal
i
z
ar
s
eal
comi
enz
odel
document
o,
en
or
denal
f
abét
i
codepaquet
esymódul
os
.
Pr
i
mer
odebeni
mpor
t
ar
s
el
osmódul
ospr
opi
osdePy
t
hon.L
uego,l
osmódul
os
det
er
cer
osyf
i
nal
ment
e,l
osmódul
ospr
opi
osdel
aapl
i
caci
ón.
Ent
r
ecadabl
oquedei
mpor
t
s
,
debedej
ar
s
eunal
í
neaenbl
anco.
-47-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Usodeel
ement
osi
mpor
t
ados
T
ant
os
i
s
ehai
mpor
t
adounmódul
ocompl
et
ocomoel
ement
osi
ndependi
ent
es
,
s
eaccedeal
osel
ement
osdedi
chomódul
oat
r
av
ésdel
es
paci
odenombr
e
i
mpor
t
ado:
import modulosypaquetes.paquete
modulosypaquetes.paquete.modulo.funcion()
import modulosypaquetes.paquete.modulo
modulosypaquetes.paquete.modulo.funcion()
from modulosypaquetes.paquete import modulo
modulo.funcion()
from modulosypaquetes.paquete.modulo import funcion
funcion()
Al
i
as
Espos
i
bl
ecr
earal
i
as(
ent
i
empodei
mpor
t
aci
ón)par
aaccederal
oses
paci
os
denombr
edef
or
maabr
ev
i
ada:
import modulosypaquetes.paquete.modulo as m
m.funcion()
-48-
PYT
HON2VSPYTHON3
Cont
ext
oci
ent
í
f
i
co.I
nt
r
oducci
ón.
Comos
ecoment
óal
comi
enz
odees
t
edocument
o,Py
t
honesunl
enguaj
ede
pr
ogr
amaci
ón.Es
t
oi
mpl
i
caquecomot
al
,has
i
doconcebi
doapar
t
i
rdeun
gr
upodepr
i
nci
pi
osl
ógi
cosyt
eor
í
asci
ent
í
f
i
cas
.
Porl
ot
ant
o,
esv
ál
i
doaf
i
r
marque:
Unl
enguaj
edepr
ogr
amaci
ónesunaf
or
madeapl
i
carunconj
unt
ode
pr
i
nci
pi
osyt
eor
í
asenuncont
ex
t
opr
áct
i
co.
I
nf
or
mát
i
caT
eór
i
cayApl
i
cada
Poraquel
l
ode«apl
i
carpr
i
nci
pi
osyt
eor
í
as
» esqueunadi
s
ci
pl
i
naci
ent
í
f
i
cas
e
cons
i
der
a«apl
i
cada»,mi
ent
r
asquel
adi
s
ci
pl
i
naquedes
ar
r
ol
l
al
ast
eor
í
ass
e
cons
i
der
a«t
eór
i
ca».Apar
t
i
rdees
t
osdosconcept
osdeci
enci
aapl
i
caday
ci
enci
at
eór
i
ca,s
econci
ben,
enl
asCi
enci
asI
nf
or
mát
i
cas
,
es
t
asdosr
amas
:
1
.I
nf
or
mát
i
cat
eór
i
ca(
ci
enci
af
or
mal
oabs
t
r
act
a)
.
2.I
nf
or
mát
i
caapl
i
cada(
ci
enci
af
áct
i
caoempí
r
i
ca)
.
L
aI
nf
or
mát
i
caT
eór
i
caesl
ar
amadel
asCi
enci
asI
nf
or
mát
i
casencar
gadade
es
t
abl
ecerl
ospr
i
nci
pi
osyt
eor
í
asporl
osques
er
i
genl
asCi
enci
asI
nf
or
mát
i
cas
.
L
aI
nf
or
mát
i
caApl
i
cadaesel
r
es
ul
t
adodeapl
i
carl
ospr
i
nci
pi
osyt
eor
í
asde
l
aI
nf
or
mát
i
caT
eór
i
ca,
enl
apr
áct
i
ca.
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
El
des
ar
r
ol
l
odeunl
enguaj
edepr
ogr
amaci
ónf
or
mapar
t
edel
aI
nf
or
mát
i
ca
Apl
i
cada.
Ev
ol
uci
óndeunl
enguaj
e
Enel
cont
ex
t
odeunl
enguaj
edepr
ogr
amaci
ón,
s
econs
i
der
aev
ol
uci
ónal
l
anz
ami
ent
odeunav
er
si
ónmej
or
adadelmi
smol
enguaj
e.
Es
t
aaf
i
r
maci
ónpar
t
edel
apr
emi
s
adeque—enel
cont
ex
t
ot
eór
i
codel
as
ci
enci
asf
or
mal
es
—,
t
odaev
ol
uci
óni
mpl
i
caunpr
ogr
es
o,yque—enel
mi
s
mo
cont
ex
t
o—,t
odopr
ogr
es
oi
mpl
i
caadel
ant
oymej
or
a.
Pr
i
nci
pi
oder
et
r
ocompat
i
bi
l
i
dad
Unodel
ospr
i
nci
pi
osenl
osqueunl
enguaj
edepr
ogr
amaci
óns
es
us
t
ent
a,
esel
«Pr
i
nci
pi
odeRet
r
ocompat
i
bi
l
i
dad».
Es
t
epr
i
nci
pi
oapl
i
cadoal
i
nt
ér
pr
et
edeunl
enguaj
edepr
ogr
amaci
ón,
es
t
abl
ece«l
acapaci
dadqueeli
nt
ér
pr
et
edeunl
enguaj
ede
pr
ogr
amaci
ón,
poseepar
ai
nt
er
pr
et
arpr
ogr
amasdesar
r
ol
l
adosconuna
v
er
si
ónpr
ev
i
adelmi
smol
enguaj
e».
Py
t
honyelpr
i
nci
pi
oder
et
r
ocompat
i
bi
l
i
dad
-51-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Unpr
ogr
amades
ar
r
ol
l
adoenl
av
er
s
i
ón2.
7(
v
er
s
i
óni
nmedi
at
ament
eant
er
i
ora
l
a3)nopuedes
erej
ecut
ados
obr
eel
i
nt
ér
pr
et
edePy
t
hon3.
0.Es
t
os
edebe
pr
i
nci
pal
ment
e,al
r
eempl
az
odel
ai
ns
t
r
ucci
ónpr
i
ntporunaf
unci
ónhomóni
ma,
yal
ael
i
mi
naci
óndeci
er
t
asf
unci
onescomor
aw_i
nput(
ent
r
eot
r
as
)
.Es
t
o
s
uponeunav
i
ol
aci
óndel
pr
i
nci
pi
oder
et
r
ocompat
i
bi
l
i
dad.
Sibi
enpuedenconv
i
v
i
ri
nt
ér
pr
et
esdedi
f
er
ent
esv
er
s
i
onesenunmi
s
mos
i
s
t
ema,
s
ol
ounapuedees
t
abl
ecer
s
ecomopr
edet
er
mi
nada.Dadoquel
osSi
s
t
emas
Oper
at
i
v
osdependendeal
gunospr
ogr
amasdes
ar
r
ol
l
adosenPy
t
hon2.
7
,
act
ual
i
z
arl
av
er
s
i
óndel
i
nt
ér
pr
et
edePy
t
honal
av
er
s
i
ón3.
0opos
t
er
i
or
,
s
upondr
í
al
ar
ev
i
s
i
óndeci
ent
osdemi
l
esdel
í
neasdecódi
gof
uent
e.
Comor
es
pues
t
aaes
t
es
upues
t
o,Py
t
hondes
ar
r
ol
l
óunaher
r
ami
ent
al
l
amada
2t
o3queper
mi
t
emi
gr
arunpaquet
ecompl
et
odes
del
av
er
s
i
ón2al
av
er
s
i
ón3,
s
upr
i
mi
endoas
í
l
aneces
i
dadder
ev
i
s
ary
/or
ees
cr
i
bi
rel
códi
godeun
pr
ogr
ama,manual
ment
e.Es
t
aher
r
ami
ent
as
eut
i
l
i
z
aporl
í
neadecomandos
,
y
s
eej
ecut
amedi
ant
el
as
i
gui
ent
ei
ns
t
r
ucci
ón:
2to3 -w carpeta/
Comodat
oadi
ci
onal
,menci
onarqueal
noex
i
s
t
i
runaher
r
ami
ent
a3t
o2of
i
ci
al
(
esdeci
r
,des
ar
r
ol
l
adaymant
eni
daporPy
t
hon)
,
el
pr
oces
odeconv
er
s
i
ón
i
nv
er
s
anoes
t
ás
opor
t
adodef
or
manat
i
v
a.Noobs
t
ant
e,
enunes
cenar
i
o
f
av
or
abl
e(
enel
quedi
chaher
r
ami
ent
aex
i
s
t
i
es
edef
or
maof
i
ci
al
,ynoat
r
av
és
det
er
cer
os
)
,s
upondr
í
ael
mant
eni
mi
ent
ode2v
er
s
i
onesdeunmi
s
mos
cr
i
pto
pr
ogr
ama.
-52-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Deci
si
ónacadémi
ca
Ens
eñarapr
ogr
amarenPy
t
hon2,
i
mpl
i
car
í
af
or
marunal
umnadocon
conoci
mi
ent
os«obs
ol
et
os.
» Ens
eñarapr
ogr
amarenPy
t
hon3,
i
mpl
i
car
í
ano
f
or
marunal
umnadoconconoci
mi
ent
oss
uf
i
ci
ent
espar
amodi
f
i
carunpr
ogr
ama
des
ar
r
ol
l
adoenPy
t
hon2.
Ent
ér
mi
nosacadémi
cos
,el
egi
runauot
r
av
er
s
i
ón,
s
uponeundi
l
emanos
ol
o
ét
i
co,s
i
not
ambi
ént
écni
co.Pores
emot
i
v
o,
al
ol
ar
godet
odosl
oscur
s
osdel
a
s
er
i
e«Py
t
hondesdeCer
o» s
eens
eñaal
al
umnadoa«pr
ogr
amaren
Py
t
hon»,
ynoas
í
enunav
er
s
i
ónes
pecí
f
i
cadel
l
enguaj
e.Dees
t
af
or
mas
e
pr
et
endequeel
códi
gof
uent
equeel
al
umnadoapr
endaades
ar
r
ol
l
ar
,
pueda
s
erej
ecut
adoi
ndi
s
t
i
nt
ament
e,t
ant
os
obr
eel
i
nt
ér
pr
et
edePy
t
hon2,como
s
obr
eel
i
nt
ér
pr
et
edePy
t
hon3.
Par
al
ogr
ares
t
o,nos
onabar
cadasf
unci
onesquenoes
t
ándi
s
poni
bl
esen
ambasr
amas(
2y3)del
l
enguaj
e,
yaf
i
ndes
ol
v
ent
arl
ai
ncompat
i
bi
l
i
dadcon
l
ai
ns
t
r
ucci
ónpr
i
ntyl
af
unci
ónr
aw_i
nput(
i
ndi
s
pens
abl
esenels
cr
i
pt
i
ng)
,a
cont
i
nuaci
ón,s
epr
ov
eeal
al
umnadodeunhackder
et
r
ocompat
i
bi
l
i
dad
des
ar
r
ol
l
adoes
pecí
f
i
cament
epar
ael
es
t
udi
ant
adodel
oscur
s
os«Py
t
hon
des
deCer
o» del
aEscuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
.Di
chohacks
e
ex
poneenl
apági
nas
i
gui
ent
e.
-53-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
HACKDERETROCOMP
ATI
BI
LI
DAD
Es
t
ehackcons
i
s
t
eenl
acr
eaci
óndedosf
unci
onesal
t
er
nat
i
v
aspar
ai
mpr
i
mi
ry
s
ol
i
ci
t
ardat
osal
us
uar
i
o,r
es
pect
i
v
ament
e.Sedenomi
nanecho(
)yget
(
)
,
pors
u
f
ami
l
i
ar
i
dadconl
osl
enguaj
esGNUBas
hyC.
from sys import version_info as version
def echo(data):
if version.major == 2: exec("print \"{}\"".format(data))
else: exec("print(\"{}\")".format(data))
def get(label):
if version.major == 2: exec("data = raw_input(\"{}\")".format(label))
else: exec("data = input(\"{}\")".format(label))
return locals()['data']
For
madeuso
Enel
des
ar
r
ol
l
odeuns
cr
i
pt
,
l
asl
í
neaspr
ecedent
ess
er
ánes
cr
i
t
asal
comi
enz
o
del
ar
chi
v
o.
Cuandos
eneces
i
t
ei
mpr
i
mi
rs
eut
i
l
i
z
ar
ál
af
unci
ónecho("cadena") enl
ugarde
l
ai
ns
t
r
ucci
ónpr
i
ntdePy
t
hon2ol
af
unci
ónpr
i
nt
(
)dePy
t
hon3,
mi
ent
r
asque
par
as
ol
i
ci
t
ardat
osal
us
uar
i
os
eempl
ear
ál
af
unci
ónget("etiqueta"),enl
ugar
del
asf
unci
onesi
nput
(
)yr
aw_i
nput
(
)del
asv
er
s
i
ones3y2r
es
pect
i
v
ament
e.
(
v
erej
empl
osdeus
oenl
apági
nas
i
gui
ent
e)
-54-
I
nt
r
oducci
ónal
L
enguaj
ePy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Ej
empl
osdeuso
I
mpr
i
mi
runt
ex
t
oenpant
al
l
a:
echo("Hola Mundo!")
# Equivalencia en Python 2: print "Hola Mundo!"
# Equivalencia en Python 3: print("Hola Mundo!")
Sol
i
ci
t
ardat
osal
us
uar
i
o:
nombre = get("Nombre: ")
# Equivalencia en Python 2: nombre = raw_input("Nombre: ")
# Equivalencia en Python 3: nombre = input("Nombre: ")
Bi
bl
i
ogr
afíacompl
e
me
nt
ari
a
Document
aci
ónof
i
ci
al
del
l
enguaj
ePy
t
hon:ht
t
ps
:
//docs
.
py
t
hon.
or
g
-55-
CERTIFÍCATE
De mu es t r a cu án to h as a pr en did o!
Si llegaste al final del curso puedes obtener una triple certificación:
- Certificado de asistencia (emitido por la escuela Eugenia Bahit)
- Certificado de aprovechamiento (emitido por CLA Linux)
- Certificación aprobación (emitido por LAECI)
Informáte con tu docente o visita la Web de certificaciones en
http://python.laeci.org.
Si necesitas preparar tu examen, puedes inscribirte en el
C u rs o de In t rod u cc ión a l L e n gu aje Py th on en la
E sc u e la d e I n for m átic a E u g en ia B ah it
www.eugeniabahit.com
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )