Subido por Luis Cota Armenta

Ciencia De Datos Con Python

Anuncio
EUGENIA BAHIT
CIENCIA DE DATOS
CON PYTHON
MATERIAL DE ESTUDIO
Curso
:
Informes e inscripción:
http://escuela.eugeniabahit.com
|
Certificaciones
:
http://python.laeci.org
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
SUMARIO
Mét
odosdemani
pul
aci
óndev
ar
i
abl
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
Mani
pul
aci
óndecadenasdet
ex
t
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
Mét
odosdef
or
mat
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
Conv
er
t
i
ramay
ús
cul
al
apr
i
mer
al
et
r
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
Conv
er
t
i
runacadenaami
nús
cul
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
Conv
er
t
i
runacadenaamay
ús
cul
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
Conv
er
t
i
rmay
ús
cul
asami
nús
cul
asyv
i
cev
er
s
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
Conv
er
t
i
runacadenaenF
or
mat
oT
í
t
ul
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
Cent
r
arunt
ex
t
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
Al
i
neart
ex
t
oal
ai
z
qui
er
da.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
Al
i
neart
ex
t
oal
ader
echa.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
Rel
l
enarunt
ex
t
oant
eponi
endocer
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
Mét
odosdeBús
queda.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
Cont
arcant
i
daddeapar
i
ci
onesdeunas
ubcadena.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
Bus
carunas
ubcadenadent
r
odeunacadena.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
Mét
odosdeVal
i
daci
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
Sabers
iunacadenacomi
enz
aconunas
ubcadenadet
er
mi
nada.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
Sabers
iunacadenaf
i
nal
i
z
aconunas
ubcadenadet
er
mi
nada.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
Sabers
iunacadenaesal
f
anumér
i
ca.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
Sabers
iunacadenaesal
f
abét
i
ca.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
Sabers
iunacadenaesnumér
i
ca.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
Sabers
iunacadenacont
i
enes
ol
omi
nús
cul
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
Sabers
iunacadenacont
i
enes
ol
omay
ús
cul
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
Sabers
iunacadenacont
i
enes
ol
oes
paci
osenbl
anco.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
0
Sabers
iunacadenat
i
eneF
or
mat
oDeT
í
t
ul
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
0
Mét
odosdeSus
t
i
t
uci
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
0
Darf
or
mat
oaunacadena,s
us
t
i
t
uy
endot
ex
t
odi
námi
cament
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
0
Reempl
az
art
ex
t
oenunacadena.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
El
i
mi
narcar
act
er
esal
ai
z
qui
er
dayder
echadeunacadena.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
El
i
mi
narcar
act
er
esal
ai
z
qui
er
dadeunacadena.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
El
i
mi
narcar
act
er
esal
ader
echadeunacadena.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
Mét
odosdeuni
ónydi
v
i
s
i
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
Uni
runacadenadef
or
mai
t
er
at
i
v
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
Par
t
i
runacadenaent
r
espar
t
es
,
ut
i
l
i
z
andouns
epar
ador
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
2
-2-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Par
t
i
runacadenaenv
ar
i
aspar
t
es
,
ut
i
l
i
z
andouns
epar
ador
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
2
Par
t
i
runacadenaenenl
í
neas
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
2
Mani
pul
aci
óndel
i
s
t
asyt
upl
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
Mét
odosdeagr
egado.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
Agr
egarunel
ement
oal
f
i
nal
del
al
i
s
t
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
Agr
egarv
ar
i
osel
ement
osal
f
i
nal
del
al
i
s
t
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
Agr
egarunel
ement
oenunapos
i
ci
óndet
er
mi
nada.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
Mét
odosdeel
i
mi
naci
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
El
i
mi
narel
úl
t
i
moel
ement
odel
al
i
s
t
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
4
El
i
mi
narunel
ement
opors
uí
ndi
ce.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
El
i
mi
narunel
ement
opors
uv
al
or
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Mét
odosdeor
den.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Or
denarunal
i
s
t
aenr
ev
er
s
a(
i
nv
er
t
i
ror
den)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Or
denarunal
i
s
t
aenf
or
maas
cendent
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Or
denarunal
i
s
t
aenf
or
mades
cendent
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Mét
odosdebús
queda.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Cont
arcant
i
daddeapar
i
ci
onesel
ement
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
5
Obt
enernúmer
odeí
ndi
ce.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
6
Anex
os
obr
el
i
s
t
asyt
upl
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
6
Conv
er
s
i
óndet
i
pos
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
6
Concat
enaci
óndecol
ecci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
7
Val
ormáx
i
moymí
ni
mo.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
7
Cont
arel
ement
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
7
Mani
pul
aci
óndedi
cci
onar
i
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
9
Mét
odosdeel
i
mi
naci
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
9
Vaci
arundi
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
9
Mét
odosdeagr
egadoycr
eaci
ón.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
9
Copi
arundi
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
9
Cr
earunnuev
odi
cci
onar
i
odes
del
ascl
av
esdeunas
ecuenci
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
20
Concat
enardi
cci
onar
i
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
20
Es
t
abl
ecerunacl
av
eyv
al
orpordef
ect
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
20
Mét
odosder
et
or
no.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
Obt
enerel
v
al
ordeunacl
av
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
Sabers
iunacl
av
eex
i
s
t
eenel
di
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
Obt
enerl
ascl
av
esyv
al
or
esdeundi
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
Obt
enerl
ascl
av
esdeundi
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
Obt
enerl
osv
al
or
esdeundi
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
22
Obt
enerl
acant
i
daddeel
ement
osdeundi
cci
onar
i
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
22
Manej
oymani
pul
aci
óndear
chi
v
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
-3-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
ModosdeAper
t
ur
adeunar
chi
v
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
Al
gunosmét
odosdel
Obj
et
oF
i
l
e.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
Acces
oaar
chi
v
osmedi
ant
el
aes
t
r
uct
ur
awi
t
h.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
Manej
odear
chi
v
osCSV.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
27
Al
gunosej
empl
osdear
chi
v
osCSV.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
27
T
r
abaj
arconar
chi
v
osCSVdes
dePy
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
L
ect
ur
adear
chi
v
osCSV.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
Es
cr
i
t
ur
adear
chi
v
osCSV.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
Pr
obabi
l
i
dadyes
t
adí
s
t
i
caconPy
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
Pr
obabi
l
i
daddes
uces
oss
i
mpl
esycompues
t
osmut
uament
eex
cl
uy
ent
esen
Py
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
Es
paci
omues
t
r
al
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
Suces
oss
i
mpl
esycompues
t
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
As
i
gnaci
óndepr
obabi
l
i
dades
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
35
Suces
oss
i
mpl
esmut
uament
eex
cl
uy
ent
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
35
Suces
oscompues
t
ospors
uces
oss
i
mpl
esmut
uament
eex
cl
uy
ent
es
.
.
.
.
.
.
.
.
.
.
36
F
unci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
37
Pr
obabi
l
i
dadcondi
ci
onal
enPy
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
37
F
unci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
Suces
osdependi
ent
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
T
eor
í
adeconj
unt
osenPy
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
40
Suces
osi
ndependi
ent
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
40
T
eor
emadeBay
esenPy
t
hon.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
T
eor
emadeBay
esypr
obabi
l
i
daddecaus
as
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
Dat
os
:cas
opr
áct
i
co.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
Anál
i
s
i
s
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
42
Pr
ocedi
mi
ent
o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
43
F
unci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
48
Bi
bl
i
ogr
af
í
acompl
ement
ar
i
a.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
48
Anex
oI
:Cál
cul
oscompl
ej
os
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
54
Es
t
adí
s
t
i
capobl
aci
onal
ymues
t
r
al
:Cál
cul
odev
ar
i
anz
aydes
v
í
oes
t
ándar
.
.
54
Pr
oduct
oes
cal
ardedosv
ect
or
es
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
55
Cál
cul
osdef
r
ecuenci
ar
el
at
i
v
a,
abs
ol
ut
ayacumul
ada.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
55
Anex
oI
I
:Cr
eaci
óndeunmenúdeopci
ones
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
57
-4-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
MÉTODOS DE MANIPULACIÓN DE VARIABLES
EnPy
t
hon,
t
odav
ar
i
abl
es
econs
i
der
aunobj
et
o.Sobr
ecadaobj
et
o,
pueden
r
eal
i
z
ar
s
edi
f
er
ent
est
i
posdeacci
onesdenomi
nadasmét
odos
.L
osmét
odoss
on
f
unci
onesper
oques
edes
pr
endendeunav
ar
i
abl
e.Porel
l
o,
s
eaccedeaes
t
as
f
unci
onesmedi
ant
el
as
i
nt
ax
i
s
:
variable.funcion()
Enal
gunoscas
os
,
es
t
osmét
odos(
f
unci
onesdeunobj
et
o)
,
acept
ar
án
par
ámet
r
oscomocual
qui
erot
r
af
unci
ón.
variable.funcion(parametro)
MANIPULACIÓN DE CADENAS DE TEXTO
Acont
i
nuaci
ón,s
ev
er
ánl
ospr
i
nci
pal
esmét
odosquepuedenapl
i
car
s
es
obr
e
unacadenadet
ex
t
o,
or
gani
z
adosporcat
egor
í
as
.
MÉTODOS DE FORMATO
CONVERTIR A MAYÚSCULA LA PRIMERA LETRA
Mét
odo:capi
t
al
i
z
e(
)
Ret
or
na:unacopi
adel
acadenaconl
apr
i
mer
al
et
r
aenmay
ús
cul
as
>>> cadena = "bienvenido a mi aplicación"
>>> resultado = cadena.capitalize()
>>> resultado
Bienvenido a mi aplicación
CONVERTIR UNA CADENA A MINÚSCULAS
Mét
odo:l
ower
(
)
Ret
or
na:unacopi
adel
acadenaenmi
nús
cul
as
>>> cadena = "Hola Mundo"
>>> cadena.lower()
-5-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
hola mundo
CONVERTIR UNA CADENA A MAYÚSCULAS
Mét
odo:upper
(
)
Ret
or
na:unacopi
adel
acadenaenmay
ús
cul
as
>>> cadena = "Hola Mundo"
>>> cadena.upper()
HOLA MUNDO
CONVERTIR MAYÚSCULAS A MINÚSCULAS Y VICEVERSA
Mét
odo:s
wapcas
e(
)
Ret
or
na:unacopi
adel
acadenacon
v
er
t
i
dasl
asmay
ús
cul
asenmi
nús
cul
asy
v
i
cev
er
s
a
>>> cadena = "Hola Mundo"
>>> cadena.swapcase()
hOLA mUNDO
CONVERTIR UNA CADENA EN FORMATO TÍTULO
Mét
odo:t
i
t
l
e(
)
Ret
or
na:unacopi
adel
acadenacon
v
er
t
i
da
>>> cadena = "hola mundo"
>>> cadena.title()
Hola Mundo
CENTRAR UN TEXTO
Mét
odo:cent
er
(
l
ongi
t
ud[
,
“
car
act
erder
el
l
eno”
]
)
Ret
or
na:unacopi
adel
acadenacent
r
ada
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.center(50, "=")
===========Bienvenido a mi aplicación============
>>> cadena.center(50, " ")
Bienvenido a mi aplicación
ALINEAR TEXTO A LA IZQUIERDA
Mét
odo:l
j
us
t
(
l
ongi
t
ud[
,
“
car
act
erder
el
l
eno”
]
)
Ret
or
na:unacopi
adel
acadenaal
i
neadaal
ai
z
qui
er
da
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.ljust(50, "=")
Bienvenido a mi aplicación=======================
-6-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
ALINEAR TEXTO A LA DERECHA
Mét
odo:r
j
us
t
(
l
ongi
t
ud[
,
“
car
act
erder
el
l
eno”
]
)
Ret
or
na:unacopi
adel
acadenaal
i
neadaal
ader
echa
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.rjust(50, "=")
=======================Bienvenido a mi aplicación
>>> cadena.rjust(50, " ")
Bienvenido a mi aplicación
RELLENAR UN TEXTO ANTEPONIENDO CEROS
Mét
odo:z
f
i
l
l
(
l
ongi
t
ud)
Ret
or
na:unacopi
adel
acadenar
el
l
enaconcer
osal
ai
z
qui
er
dahas
t
a
al
canz
arl
al
ongi
t
udf
i
nal
i
ndi
cada
>>> numero_factura = 1575
>>> str(numero_factura).zfill(12)
000000001575
MÉTODOS DE BÚSQUEDA
CONTAR CANTIDAD DE APARICIONES DE UNA SUBCADENA
Mét
odo:count
(
“
s
ubcadena”
[
,pos
i
ci
on_i
ni
ci
o,pos
i
ci
on_f
i
n]
)
Ret
or
na:unent
er
or
epr
es
ent
andol
acant
i
daddeapar
i
ci
onesdes
ubcadena
dent
r
odecadena
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.count("a")
3
BUSCAR UNA SUBCADENA DENTRO DE UNA CADENA
Mét
odo:f
i
nd(
“
s
ubcadena”
[
,
pos
i
ci
on_i
ni
ci
o,
pos
i
ci
on_f
i
n]
)
Ret
or
na:unent
er
or
epr
es
ent
andol
apos
i
ci
óndondei
ni
ci
al
as
ubcadenadent
r
o
decadena.Si
nol
aencuent
r
a,
r
et
or
na1
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.find("mi")
13
>>> cadena.find("mi", 0, 10)
-1
-7-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
MÉTODOS DE VALIDACIÓN
SABER SI UNA CADENA COMIENZA CON UNA SUBCADENA
DETERMINADA
Mét
odo:s
t
ar
t
s
wi
t
h(
“
s
ubcadena”
[
,
pos
i
ci
on_i
ni
ci
o,
pos
i
ci
on_f
i
n]
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.startswith("Bienvenido")
True
>>> cadena.startswith("aplicación")
False
>>> cadena.startswith("aplicación", 16)
True
SABER SI UNA CADENA FINALIZA CON UNA SUBCADENA DETERMINADA
Mét
odo:ends
wi
t
h(
“
s
ubcadena”
[
,pos
i
ci
on_i
ni
ci
o,pos
i
ci
on_f
i
n]
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "bienvenido a mi aplicación".capitalize()
>>> cadena.endswith("aplicación")
True
>>> cadena.endswith("Bienvenido")
False
>>> cadena.endswith("Bienvenido", 0, 10)
True
SABER SI UNA CADENA ES ALFANUMÉRICA
Mét
odo:i
s
al
num(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "pepegrillo 75"
>>> cadena.isalnum()
False
>>> cadena = "pepegrillo"
>>> cadena.isalnum()
True
>>> cadena = "pepegrillo75"
>>> cadena.isalnum()
True
SABER SI UNA CADENA ES ALFABÉTICA
Mét
odo:i
s
al
pha(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "pepegrillo 75"
>>> cadena.isalpha()
False
-8-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
>>> cadena = "pepegrillo"
>>> cadena.isalpha()
True
>>> cadena = "pepegrillo75"
>>> cadena.isalpha()
False
SABER SI UNA CADENA ES NUMÉRICA
Mét
odo:i
s
di
gi
t
(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "pepegrillo 75"
>>> cadena.isdigit()
False
>>> cadena = "7584"
>>> cadena.isdigit()
True
>>> cadena = "75 84"
>>> cadena.isdigit()
False
>>> cadena = "75.84"
>>> cadena.isdigit()
False
SABER SI UNA CADENA CONTIENE SOLO MINÚSCULAS
Mét
odo:i
s
l
ower
(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "pepe grillo"
>>> cadena.islower()
True
>>> cadena = "Pepe Grillo"
>>> cadena.islower()
False
>>> cadena = "Pepegrillo"
>>> cadena.islower()
False
>>> cadena = "pepegrillo75"
>>> cadena.islower()
True
SABER SI UNA CADENA CONTIENE SOLO MAYÚSCULAS
Mét
odo:i
s
upper
(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "PEPE GRILLO"
>>> cadena.isupper()
True
>>> cadena = "Pepe Grillo"
>>> cadena.isupper()
False
-9-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
>>> cadena = "Pepegrillo"
>>> cadena.isupper()
False
>>> cadena = "PEPEGRILLO"
>>> cadena.isupper()
True
SABER SI UNA CADENA CONTIENE SOLO ESPACIOS EN BLANCO
Mét
odo:i
s
s
pace(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "pepe grillo"
>>> cadena.isspace()
False
>>> cadena = "
"
>>> cadena.isspace()
True
SABER SI UNA CADENA TIENE FORMATO DE TÍTULO
Mét
odo:i
s
t
i
t
l
e(
)
Ret
or
na:T
r
ueoF
al
s
e
>>> cadena = "Pepe Grillo"
>>> cadena.istitle()
True
>>> cadena = "Pepe grillo"
>>> cadena.istitle()
False
MÉTODOS DE SUSTITUCIÓN
DAR FORMATO A UNA CADENA, SUSTITUYENDO TEXTO DINÁMICAMENTE
Mét
odo:f
or
mat
(
*ar
gs
,
**k
war
gs
)
Ret
or
na:l
acadenaf
or
mat
eada
>>> cadena = "bienvenido a mi aplicación {0}"
>>> cadena.format("en Python")
bienvenido a mi aplicación en Python
>>> cadena = "Importe bruto: ${0} + IVA: ${1} = Importe neto: {2}"
>>> cadena.format(100, 21, 121)
Importe bruto: $100 + IVA: $21 = Importe neto: 121
>>> cadena = "Importe bruto: ${bruto} + IVA: ${iva} = Importe neto: {neto}"
>>> cadena.format(bruto=100, iva=21, neto=121)
Importe bruto: $100 + IVA: $21 = Importe neto: 121
>>> cadena.format(bruto=100, iva=100 * 21 / 100, neto=100 * 21 / 100 + 100)
Importe bruto: $100 + IVA: $21 = Importe neto: 121
-1
0-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
REEMPLAZAR TEXTO EN UNA CADENA
Mét
odo:r
epl
ace(
“
s
ubcadenaabus
car
”
,“
s
ubcadenaporl
acual
r
eempl
az
ar
”
)
Ret
or
na:l
acadenar
eempl
az
ada
>>> buscar = "nombre apellido"
>>> reemplazar_por = "Juan Pérez"
>>> "Estimado Sr. nombre apellido:".replace(buscar, reemplazar_por)
Estimado Sr. Juan Pérez:
ELIMINAR CARACTERES A LA IZQUIERDA Y DERECHA DE UNA CADENA
Mét
odo:s
t
r
i
p(
[
“
car
act
er
”
]
)
Ret
or
na:l
acadenas
us
t
i
t
ui
da
>>> cadena = " www.eugeniabahit.com
>>> cadena.strip()
www.eugeniabahit.com
>>> cadena.strip(' ')
www.eugeniabahit.com
"
ELIMINAR CARACTERES A LA IZQUIERDA DE UNA CADENA
Mét
odo:l
s
t
r
i
p(
[
“
car
act
er
”
]
)
Ret
or
na:l
acadenas
us
t
i
t
ui
da
>>> cadena = "www.eugeniabahit.com"
>>> cadena.lstrip("w." )
eugeniabahit.com
>>> cadena = "
www.eugeniabahit.com"
>>> cadena.lstrip()
www.eugeniabahit.com
ELIMINAR CARACTERES A LA DERECHA DE UNA CADENA
Mét
odo:r
s
t
r
i
p(
[
“
car
act
er
”
]
)
Ret
or
na:l
acadenas
us
t
i
t
ui
da
>>> cadena = "www.eugeniabahit.com
>>> cadena.rstrip( )
www.eugeniabahit.com
"
MÉTODOS DE UNIÓN Y DIVISIÓN
UNIR UNA CADENA DE FORMA ITERATIVA
Mét
odo:j
oi
n(
i
t
er
abl
e)
Ret
or
na:l
acadenauni
daconel
i
t
er
abl
e(
l
acadenaess
epar
adaporcadauno
del
osel
ement
osdel
i
t
er
abl
e)
>>> formato_numero_factura = ("Nº 0000-0", "-0000 (ID: ", ")")
-1
1-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
>>> numero = "275"
>>> numero_factura = numero.join(formato_numero_factura)
>>> numero_factura
Nº 0000-0275-0000 (ID: 275)
PARTIR UNA CADENA EN TRES PARTES, UTILIZANDO UN SEPARADOR
Mét
odo:par
t
i
t
i
on(
“
s
epar
ador
”
)
Ret
or
na:unat
upl
adet
r
esel
ement
osdondeel
pr
i
mer
oesel
cont
eni
dodel
a
cadenapr
ev
i
oal
s
epar
ador
,
el
s
egundo,
el
s
epar
adormi
s
moyel
t
er
cer
o,el
cont
eni
dodel
acadenapos
t
er
i
oral
s
epar
ador
>>> tupla = "http://www.eugeniabahit.com".partition("www.")
>>> tupla
('http://', 'www.', 'eugeniabahit.com')
>>> protocolo, separador, dominio = tupla
>>>> "Protocolo: {0}\nDominio: {1}".format(protocolo, dominio)
Protocolo: http://
Dominio: eugeniabahit.com
PARTIR UNA CADENA EN VARIAS PARTES, UTILIZANDO UN SEPARADOR
Mét
odo:s
pl
i
t
(
“
s
epar
ador
”
)
Ret
or
na:unal
i
s
t
acont
odosel
ement
osencont
r
adosal
di
v
i
di
rl
acadenaporun
s
epar
ador
>>> keywords = "python, guia, curso, tutorial".split(", ")
>>> keywords
['python', 'guia', 'curso', 'tutorial']
PARTIR UNA CADENA EN EN LÍNEAS
Mét
odo:s
pl
i
t
l
i
nes
(
)
Ret
or
na:unal
i
s
t
adondecadael
ement
oesunaf
r
acci
óndel
acadenadi
v
i
da
enl
í
neas
>>> texto = """Linea 1
Linea 2
Linea 3
Linea 4
"""
>>> texto.splitlines()
['Linea 1', 'Linea 2', 'Linea 3', 'Linea 4']
>>> texto = "Linea 1\nLinea 2\nLinea 3"
>>> texto.splitlines()
['Linea 1', 'Linea 2', 'Linea 3']
-1
2-
MANIPULACIÓN DE LISTAS Y TUPLAS
Enes
t
ecapí
t
ul
o,
s
ev
er
ánl
osmét
odosquepos
eeel
obj
et
ol
i
s
t
a.Al
gunosde
el
l
os
,
t
ambi
éns
eencuent
r
andi
s
poni
bl
espar
al
ast
upl
as
.
MÉTODOS DE AGREGADO
AGREGAR UN ELEMENTO AL FINAL DE LA LISTA
Mét
odo:append(
“
nuev
oel
ement
o”
)
>>> nombres_masculinos = ["Alvaro", "Jacinto", "Miguel", "Edgardo", "David"]
>>> nombres_masculinos.append("Jose")
>>> nombres_masculinos
['Alvaro', 'David', 'Edgardo', 'Jacinto', 'Jose', 'Ricky', 'Jose']
AGREGAR VARIOS ELEMENTOS AL FINAL DE LA LISTA
Mét
odo:ex
t
end(
ot
r
a_l
i
s
t
a)
>>> nombres_masculinos.extend(["Jose", "Gerardo"])
>>> nombres_masculinos
['Alvaro', 'David', 'Edgardo', 'Jacinto', 'Jose', 'Ricky', 'Jose', 'Jose',
'Gerardo']
AGREGAR UN ELEMENTO EN UNA POSICIÓN DETERMINADA
Mét
odo:i
ns
er
t
(
pos
i
ci
ón,“
nuev
oel
ement
o”
)
>>> nombres_masculinos.insert(0, "Ricky")
>>> nombres_masculinos
['Ricky', 'Alvaro', 'David', 'Edgardo', 'Jacinto', 'Jose', 'Ricky', 'Jose',
'Jose', 'Gerardo']
MÉTODOS DE ELIMINACIÓN
ELIMINAR EL ÚLTIMO ELEMENTO DE LA LISTA
Mét
odo:pop(
)
Ret
or
na:el
el
ement
oel
i
mi
nado
>>> nombres_masculinos.pop()
'Gerardo'
>>> nombres_masculinos
['Ricky', 'Alvaro', 'David', 'Edgardo', 'Jacinto', 'Jose', 'Ricky', 'Jose',
'Jose']
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
ELIMINAR UN ELEMENTO POR SU ÍNDICE
Mét
odo:pop(
í
ndi
ce)
Ret
or
na:el
el
ement
oel
i
mi
nado
>>> nombres_masculinos.pop(3)
'Edgardo'
>>> nombres_masculinos
['Ricky', 'Alvaro', 'David', 'Jacinto', 'Jose', 'Ricky', 'Jose', 'Jose']
ELIMINAR UN ELEMENTO POR SU VALOR
Mét
odo:r
emov
e(
“
v
al
or
”
)
>>> nombres_masculinos.remove("Jose")
>>> nombres_masculinos
['Ricky', 'Alvaro', 'David', 'Jacinto', 'Ricky', 'Jose', 'Jose']
MÉTODOS DE ORDEN
ORDENAR UNA LISTA EN REVERSA (INVERTIR ORDEN)
Mét
odo:r
ev
er
s
e(
)
>>> nombres_masculinos.reverse()
>>> nombres_masculinos
['Jose', 'Jose', 'Ricky', 'Jacinto', 'David', 'Alvaro', 'Ricky']
ORDENAR UNA LISTA EN FORMA ASCENDENTE
Mét
odo:s
or
t
(
)
>>> nombres_masculinos.sort()
>>> nombres_masculinos
['Alvaro', 'David', 'Jacinto', 'Jose', 'Jose', 'Ricky', 'Ricky']
ORDENAR UNA LISTA EN FORMA DESCENDENTE
Mét
odo:s
or
t
(
r
ev
er
s
e=
T
r
ue)
>>> nombres_masculinos.sort(reverse=True)
>>> nombres_masculinos
['Ricky', 'Ricky', 'Jose', 'Jose', 'Jacinto', 'David', 'Alvaro']
MÉTODOS DE BÚSQUEDA
CONTAR CANTIDAD DE APARICIONES ELEMENTOS
Mét
odo:count
(
el
ement
o)
>>> nombres_masculinos = ["Alvaro", "Miguel", "Edgardo", "David", "Miguel"]
-1
5-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
>>> nombres_masculinos.count("Miguel")
2
>>> nombres_masculinos = ("Alvaro", "Miguel", "Edgardo", "David", "Miguel")
>>> nombres_masculinos.count("Miguel")
2
OBTENER NÚMERO DE ÍNDICE
Mét
odo:i
ndex
(
el
ement
o[
,
i
ndi
ce_i
ni
ci
o,i
ndi
ce_f
i
n]
)
>>> nombres_masculinos.index("Miguel")
1
>>> nombres_masculinos.index("Miguel", 2, 5)
4
ANEXO SOBRE LISTAS Y TUPLAS
CONVERSIÓN DE TIPOS
Enel
conj
unt
odel
asf
unci
onesi
nt
egr
adasdePy
t
hon,
espos
i
bl
eencont
r
ardos
f
unci
onesqueper
mi
t
enconv
er
t
i
rl
i
s
t
asent
upl
as
,yv
i
cev
er
s
a.Es
t
asf
unci
ones
s
onl
i
s
tyt
upl
e,
par
aconv
er
t
i
rt
upl
asal
i
s
t
asyl
i
s
t
asat
upl
as
,
r
es
pect
i
v
ament
e.
Unodel
osus
osmásf
r
ecuent
esesel
decon
v
er
s
i
óndet
upl
asal
i
s
t
as
,que
r
equi
er
ans
ermodi
f
i
cadas
.Es
t
os
ucedeamenudoconl
osr
es
ul
t
adosobt
eni
dos
apar
t
i
rdeunacons
ul
t
aabas
ededat
os
.
>>> tupla = (1, 2, 3, 4)
>>> tupla
(1, 2, 3, 4)
>>> list(tupla)
[1, 2, 3, 4]
>>> lista = [1, 2, 3, 4]
>>> lista
[1, 2, 3, 4]
>>> tuple(lista)
(1, 2, 3, 4)
-1
6-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
CONCATENACIÓN DE COLECCIONES
Sepuedenconcat
enar(
ouni
r
)dosomásl
i
s
t
asodosomást
upl
as
,medi
ant
eel
s
i
gnodeadi
ci
ón+
.
Nopuedeuni
r
s
eunal
i
s
t
aaunat
upl
a.L
ascol
ecci
onesauni
rdebens
erdel
mi
s
mot
i
po.
>>>
>>>
>>>
>>>
[1,
lista1 =
lista2 =
lista3 =
lista3
2, 3, 4,
[1, 2, 3, 4]
[3, 4, 5, 6, 7, 8]
lista1 + lista2
>>>
>>>
>>>
>>>
>>>
(1,
tupla1 =
tupla2 =
tupla3 =
tupla4 =
tupla4
2, 3, 4,
(1, 2,
(4, 6,
(3, 5,
tupla1
3, 4, 5, 6, 7, 8]
3, 4, 5)
8, 10)
7, 9)
+ tupla2 + tupla3
5, 4, 6, 8, 10, 3, 5, 7, 9)
VALOR MÁXIMO Y MÍNIMO
Sepuedeobt
enerel
v
al
ormáx
i
moymí
ni
mot
ant
odel
i
s
t
ascomodet
upl
as
:
>>>
10
>>>
5
>>>
1
>>>
8
>>>
1
max(tupla4)
max(tupla1)
min(tupla1)
max(lista3)
min(lista1)
CONTAR ELEMENTOS
L
af
unci
ón len() s
i
r
v
et
ant
opar
acont
arel
ement
osdeunal
i
s
t
aot
upl
a,
como
car
act
er
esdeunacadenadet
ex
t
o:
>>> len(lista3)
10
>>> len(lista1)
4
-1
7-
MANIPULACIÓN DE DICCIONARIOS
MÉTODOS DE ELIMINACIÓN
VACIAR UN DICCIONARIO
Mét
odo:cl
ear
(
)
>>> diccionario = {"color": "violeta", "talle": "XS", "precio": 174.25}
>>> diccionario
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'}
>>> diccionario.clear()
>>> diccionario
{}
MÉTODOS DE AGREGADO Y CREACIÓN
COPIAR UN DICCIONARIO
Mét
odo:copy
(
)
>>> diccionario = {"color": "violeta", "talle": "XS", "precio": 174.25}
>>> remera = diccionario.copy()
>>> diccionario
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'}
>>> remera
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'}
>>> diccionario.clear()
>>> diccionario
{}
>>> remera
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'}
>>> musculosa = remera
>>> remera
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'}
>>> musculosa
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'}
>>> remera.clear()
>>> remera
{}
>>> musculosa
{}
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
CREAR UN NUEVO DICCIONARIO DESDE LAS CLAVES DE UNA
SECUENCIA
Mét
odo:di
ct
.
f
r
omk
ey
s
(
s
ecuenci
a[
,v
al
orpordef
ect
o]
)
>>> secuencia = ["color", "talle", "marca"]
>>> diccionario1 = dict.fromkeys(secuencia)
>>> diccionario1
{'color': None, 'marca': None, 'talle': None}
>>> diccionario2 = dict.fromkeys(secuencia, 'valor x defecto')
>>> diccionario2
{'color': 'valor x defecto', 'marca': 'valor x defecto', 'talle': 'valor x
defecto'}
CONCATENAR DICCIONARIOS
Mét
odo:updat
e(
di
cci
onar
i
o)
>>> diccionario1 = {"color": "verde", "precio": 45}
>>> diccionario2 = {"talle": "M", "marca": "Lacoste"}
>>> diccionario1.update(diccionario2)
>>> diccionario1
{'color': 'verde', 'precio': 45, 'marca': 'Lacoste', 'talle': 'M'}
ESTABLECER UNA CLAVE Y VALOR POR DEFECTO
Mét
odo:s
et
def
aul
t
(
“
cl
av
e”
[
,
None|
v
al
or
_por
_def
ect
o]
)
Si
l
acl
av
enoex
i
s
t
e,
l
acr
eaconel
v
al
orpordef
ect
o.Si
empr
er
et
or
na
el
v
al
orpar
al
acl
av
epas
adacomopar
ámet
r
o.
>>> remera = {"color": "rosa", "marca": "Zara"}
>>> clave = remera.setdefault("talle", "U")
>>> clave
'U'
>>> remera
{'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> remera2 = remera.copy()
>>> remera2
{'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> clave = remera2.setdefault("estampado")
>>> clave
>>> remera2
{'color': 'rosa', 'estampado': None, 'marca': 'Zara', 'talle': 'U'}
>>> clave = remera2.setdefault("marca", "Lacoste")
>>> clave
'Zara'
-20-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
>>> remera2
{'color': 'rosa', 'estampado': None, 'marca': 'Zara', 'talle': 'U'}
MÉTODOS DE RETORNO
OBTENER EL VALOR DE UNA CLAVE
Mét
odo:get
(
cl
av
e[
,
“
v
al
orxdef
ect
os
i
l
acl
av
enoex
i
s
t
e”
]
)
>>> remera.get("color")
'rosa'
>>> remera.get("stock")
>>> remera.get("stock", "sin stock")
'sin stock'
SABER SI UNA CLAVE EXISTE EN EL DICCIONARIO
Mét
odo:‘
cl
av
e’
i
ndi
cci
onar
i
o
>>> existe = 'precio' in remera
>>> existe
False
>>> existe = 'color' in remera
>>> existe
True
OBTENER LAS CLAVES Y VALORES DE UN DICCIONARIO
Mét
odo:i
t
ems
(
)
diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
for clave, valor in diccionario.items():
clave, valor
Sal
i
da:
('color', 'rosa')
('marca', 'Zara')
('talle', 'U')
OBTENER LAS CLAVES DE UN DICCIONARIO
Mét
odo:k
ey
s
(
)
diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
for clave in diccionario.keys():
clave
'marca'
'talle'
'color'
Obt
enercl
av
esenunal
i
s
t
a
-21-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
>>> diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> claves = list(diccionario.keys())
>>> claves
['color', 'marca', 'talle']
OBTENER LOS VALORES DE UN DICCIONARIO
Mét
odo:v
al
ues
(
)
diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
for clave in diccionario.values():
clave
'rosa'
'Zara'
'U'
Obt
enerv
al
or
esenunal
i
s
t
a
>>> diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> claves = list(diccionario.values())
OBTENER LA CANTIDAD DE ELEMENTOS DE UN DICCIONARIO
Par
acont
arl
osel
ement
osdeundi
cci
onar
i
o,
al
i
gual
queconl
asl
i
s
t
asyt
upl
as
,
s
eut
i
l
i
z
al
af
unci
óni
nt
egr
adalen()
>>> diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> len(diccionario)
3
-22-
MANEJO Y MANIPULACIÓN DE ARCHIVOS
Py
t
honper
mi
t
et
r
abaj
arendosni
v
el
esdi
f
er
ent
esconr
es
pect
oal
s
i
s
t
emade
ar
chi
v
osydi
r
ect
or
i
os
.
Unodeel
l
os
,esat
r
av
ésdel
módul
oos
,
quef
aci
l
i
t
ael
t
r
abaj
ocont
odoel
s
i
s
t
emadear
chi
v
osydi
r
ect
or
i
os
,
ani
v
el
del
pr
opi
osSi
s
t
emaOper
at
i
v
o.
El
s
egundoni
v
el
,
esel
queper
mi
t
et
r
abaj
arconar
chi
v
osmani
pul
andos
u
l
ect
ur
ayes
cr
i
t
ur
ades
del
apr
opi
aapl
i
caci
ónos
cr
i
pt
,t
r
at
andoacadaar
chi
v
o
comounobj
et
o.
MODOS DE APERTURA DE UN ARCHIVO
El
mododeaper
t
ur
adeunar
chi
v
o,
es
t
ár
el
aci
onadoconel
obj
et
i
v
of
i
nal
que
r
es
pondeal
apr
egunt
a“p
¿ ar
aquéseest
áabr
i
endoest
ear
chi
vo?”.L
as
r
es
pues
t
aspuedens
erv
ar
i
as
:par
al
eer
,
par
aes
cr
i
bi
r
,opar
al
eeryes
cr
i
bi
r
.
Cadav
ezques
e“
abr
e”unar
chi
v
os
ees
t
ácr
eandounpunt
er
oenmemor
i
a.
Es
t
epunt
er
opos
i
ci
onar
áuncur
sor(
opunt
odeacces
o)enunl
ugares
pecí
f
i
co
del
amemor
i
a(
di
chodemodomáss
i
mpl
e,pos
i
ci
onar
áel
cur
s
orenunby
t
e
det
er
mi
nadodel
cont
eni
dodel
ar
chi
v
o)
.
Es
t
ecur
s
ors
emov
er
ádent
r
odel
ar
chi
v
o,
amedi
daques
el
eaoes
cr
i
baen
di
choar
chi
v
o.
Cuandounar
chi
v
os
eabr
eenmodol
ect
ur
a,
el
cur
s
ors
epos
i
ci
onaenelby
t
e0
del
ar
chi
v
o(
esdeci
r
,al
comi
enz
odel
ar
chi
v
o)
.Unav
ezl
eí
doel
ar
chi
v
o,el
cur
s
orpas
aalby
t
ef
i
nal
del
ar
chi
v
o(
equi
v
al
ent
eacant
i
dadt
ot
al
deby
t
esdel
ar
chi
v
o)
.L
omi
s
mos
ucedecuandos
eabr
eenmodoes
cr
i
t
ur
a.El
cur
s
ors
e
mov
er
áamedi
daques
ev
aes
cr
i
bi
endo.
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Cuandos
edes
eaes
cr
i
bi
ral
f
i
nal
deunar
chi
v
ononul
o,s
eut
i
l
i
z
ael
modo
append(
agr
egar
)
.Dees
t
af
or
ma,
el
ar
chi
v
os
eabr
econel
cur
s
oral
f
i
nal
del
ar
chi
v
o.
El
s
í
mbol
o+comos
uf
i
j
odeunmodo,
agr
egael
modocont
r
ar
i
oal
deaper
t
u
r
a
unav
ezs
eej
ecut
el
aacci
óndeaper
t
ur
a.Porej
empl
o,el
modor(
r
ead)conel
s
uf
i
j
o+(
r
+
)
,
abr
eel
ar
chi
v
opar
al
ect
ur
a,
yt
r
asl
al
ect
ur
a,v
uel
v
eel
cur
s
oral
by
t
e0.
L
as
i
gui
ent
et
abl
amues
t
r
al
osdi
f
er
ent
esmodosdeaper
t
ur
adeunar
chi
v
o:
I
ndi
cador
r
Mododeaper
t
ur
a
Ubi
caci
óndelpunt
er
o
Sol
ol
ect
ur
a
Al
i
ni
ci
odel
ar
chi
v
o
rb
Sol
ol
ect
ur
aenmodobi
nar
i
o
Al
i
ni
ci
odel
ar
chi
v
o
r+
L
ect
ur
ayes
cr
i
t
ur
a
Al
i
ni
ci
odel
ar
chi
v
o
L
ect
ur
ayes
cr
i
t
ur
aenmodobi
nar
i
o
Al
i
ni
ci
odel
ar
chi
v
o
w
Sol
oes
cr
i
t
ur
a.
Sobr
ees
cr
i
beel
ar
chi
v
os
i
ex
i
s
t
e.
Cr
eael
ar
chi
v
os
i
noex
i
s
t
e.
Al
i
ni
ci
odel
ar
chi
v
o
wb
Sol
oes
cr
i
t
ur
aenmodobi
nar
i
o.
Sobr
ees
cr
i
beel
ar
chi
v
os
i
ex
i
s
t
e.
Cr
eael
ar
chi
v
os
i
noex
i
s
t
e.
Al
i
ni
ci
odel
ar
chi
v
o
w+
Es
cr
i
t
ur
ayl
ect
ur
a.
Sobr
ees
cr
i
beel
ar
chi
v
os
i
ex
i
s
t
e.
Cr
eael
ar
chi
v
os
i
noex
i
s
t
e.
Al
i
ni
ci
odel
ar
chi
v
o
wb+
Es
cr
i
t
ur
ayl
ect
ur
aenmodobi
nar
i
o.
Sobr
ees
cr
i
beel
ar
chi
v
os
i
ex
i
s
t
e.
Cr
eael
ar
chi
v
os
i
noex
i
s
t
e.
Al
i
ni
ci
odel
ar
chi
v
o
Añadi
do(
agr
egarcont
eni
do)
.
Cr
eael
ar
chi
v
os
i
és
t
enoex
i
s
t
e.
Si
el
ar
chi
v
oex
i
s
t
e,al
f
i
nal
de
és
t
e.
Si
el
ar
chi
v
onoex
i
s
t
e,al
comi
enz
o.
ab
Añadi
doenmodobi
nar
i
o(
agr
egar
cont
eni
do)
.
Cr
eael
ar
chi
v
os
i
és
t
enoex
i
s
t
e.
Si
el
ar
chi
v
oex
i
s
t
e,al
f
i
nal
de
és
t
e.
Si
el
ar
chi
v
onoex
i
s
t
e,al
comi
enz
o.
a+
Añadi
do(
agr
egarcont
eni
do)yl
ect
ur
a.
Si
el
ar
chi
v
oex
i
s
t
e,al
f
i
nal
de
rb+
a
-25-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
ab+
Cr
eael
ar
chi
v
os
i
és
t
enoex
i
s
t
e.
és
t
e.
Si
el
ar
chi
v
onoex
i
s
t
e,al
comi
enz
o.
Añadi
do(
agr
egarcont
eni
do)yl
ect
ur
aen
modobi
nar
i
o.
Cr
eael
ar
chi
v
os
i
és
t
enoex
i
s
t
e.
Si
el
ar
chi
v
oex
i
s
t
e,al
f
i
nal
de
és
t
e.
Si
el
ar
chi
v
onoex
i
s
t
e,al
comi
enz
o.
ALGUNOS MÉTODOS DEL OBJETO FILE
El
obj
et
of
i
l
e,
ent
r
es
usmét
odosdi
s
ponedel
oss
i
gui
ent
es
:
Mét
odo
Descr
i
pci
ón
read([bytes])
L
eet
odoel
cont
eni
dodeunar
chi
v
o.
Si
s
el
epas
al
al
ongi
t
uddeby
t
es
,l
eer
ás
ol
oel
cont
eni
do
has
t
al
al
ongi
t
udi
ndi
cada.
readlines()
L
eet
odasl
asl
í
neasdeunar
chi
v
o
write(cadena)
Es
cr
i
becadenadent
r
odel
ar
chi
v
o
writelines(secuencia)
Secuenci
as
er
ácual
qui
eri
t
er
abl
ecuy
osel
ement
oss
er
án
es
cr
i
t
osunoporl
í
nea
ACCESO A ARCHIVOS MEDIANTE LA ESTRUCTURA WITH
Conl
aes
t
r
uct
ur
awi
t
hyl
af
unci
ónopen(
)
,
puedeabr
i
r
s
eunar
chi
v
oen
cual
qui
ermodoyt
r
abaj
arconél
,
s
i
nneces
i
daddecer
r
ar
l
oodes
t
r
ui
rel
punt
er
o,
y
aquedees
t
os
eencar
gal
aes
t
r
uct
ur
awi
t
h.
L
eerunar
chi
v
o:
with open("archivo.txt", "r") as archivo:
contenido = archivo.read()
Es
cr
i
bi
renunar
chi
v
o:
contenido = """
Este será el contenido del nuevo archivo.
El archivo tendrá varias líneas.
-26-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
"""
with open("archivo.txt", "r") as archivo:
archivo.write(contenido)
MANEJO DE ARCHIVOS CSV
El
f
or
mat
oCSVder
i
v
as
unombr
edel
i
ngl
és«commas
epar
at
edv
al
ues
»
(
v
al
or
ess
epar
adosporcoma)
,
def
i
ni
doenl
asRF
C41
80.Set
r
at
adear
chi
v
os
det
ex
t
opl
ano,
des
t
i
nadosal
al
macenami
ent
omas
i
v
odedat
os
.Esunodel
os
f
or
mat
osmáss
i
mpl
espar
aef
ect
uaranál
i
s
i
sdedat
os
.Dehecho,muchos
f
or
mat
osdear
chi
v
onol
i
br
es(
ol
i
br
esper
omáscompl
ej
os
)
,
s
uel
enpas
ar
s
ea
f
or
mat
oCSVpar
aapl
i
carci
enci
adedat
oscompl
ej
acondi
v
er
s
osl
enguaj
es
.
Unar
chi
v
oCSVs
eencuent
r
af
or
madoporunacabecer
aquedef
i
nenombr
es
decol
umnas
,yl
asf
i
l
ass
i
gui
ent
es
,
t
i
enenl
osdat
oscor
r
es
pondi
ent
esacada
col
umna,s
epar
adosporunacoma.Si
nembar
go,
muchosot
r
oss
í
mbol
os
puedenut
i
l
i
z
ar
s
ecomos
epar
ador
esdecel
das
.Ent
r
eel
l
os
,
el
t
abul
adoyel
punt
oycomas
oni
gual
def
r
ecuent
esquel
acoma.
ALGUNOS EJEMPLOS DE ARCHIVOS CSV
Dat
osmet
eor
ol
ógi
cos(
s
epar
adospor;
)
ID;DATA;VV;DV;T;HR;PPT;RS;P
0;2016-03-01 00:00:00;;;9.9;73;;;
1;2016-03-01 00:30:00;;;9.0;67;;;
2;2016-03-01 01:00:00;;;8.3;64;;;
3;2016-03-01 01:30:00;;;8.0;61;;;
4;2016-03-01 02:00:00;;;7.4;62;;;
5;2016-03-01 02:30:00;;;8.3;47;;;
6;2016-03-01 03:00:00;;;7.7;50;;;
7;2016-03-01 03:30:00;;;9.0;39;;;
Punt
aj
esobt
eni
dosporj
ugador
esdeunt
or
neo(
s
epar
adospor,
)
nombre,cantidad,anio
-27-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Maria,858,1930
Jose,665,1930
Rosa,591,1930
Juan Carlos,522,1930
Antonio,509,1930
Maria Esther,495,1930
Maria Luisa,470,1930
Juana,453,1930
Juan,436,1930
Empr
es
asr
egi
s
t
r
adasenl
aI
ns
pecci
ónGener
al
deJ
us
t
i
ci
adeAr
gent
i
na
(
s
epar
adospor,
ydat
osent
r
ecomi
l
l
ados
)
"numero_correlativo","tipo_societario","descripcion_tipo_societario","razon_soci
al","dada_de_baja","codigo_baja","detalle_baja"
"10","10","SOCIEDAD COLECTIVA","A A VALLE Y COMPA¥IA","S","42014","PERTENECE A
REGISTRO ENTIDADES INACTIVAS"
"11","10","SOCIEDAD COLECTIVA","A LUCERO Y H CARATOLI","S","42014","PERTENECE A
REGISTRO ENTIDADES INACTIVAS"
"12","10","SOCIEDAD COLECTIVA","A PUIG E HIJOS","S","42014","PERTENECE A
REGISTRO ENTIDADES INACTIVAS"
"13","10","SOCIEDAD COLECTIVA","A C I C A","S","42014","PERTENECE A REGISTRO
ENTIDADES INACTIVAS"
"14","10","SOCIEDAD COLECTIVA","A¥ON BEATRIZ S Y CIA","S","42014","PERTENECE A
REGISTRO ENTIDADES INACTIVAS"
"15","10","SOCIEDAD COLECTIVA","ABA DIESEL","S","42014","PERTENECE A REGISTRO
ENTIDADES INACTIVAS"
"16","10","SOCIEDAD COLECTIVA","ABADA L JOSE Y JORGE JOSE
ABADAL","S","42014","PERTENECE A REGISTRO ENTIDADES INACTIVAS"
"17","10","SOCIEDAD COLECTIVA","ABADAL JOSE E HIJO","S","42014","PERTENECE A
REGISTRO ENTIDADES INACTIVAS"
"18","10","SOCIEDAD COLECTIVA","ABATE Y MACIAS","S","42014","PERTENECE A
REGISTRO ENTIDADES INACTIVAS"
Espos
i
bl
et
ambi
én,
encont
r
ardat
osal
macenadosenar
chi
v
osdet
ex
t
o(
T
XT
)
conf
or
mat
osmuys
i
mi
l
ar
esal
ques
ees
per
aencont
r
arenunCSV.Av
eceses
pos
i
bl
edes
ar
r
ol
l
aruns
cr
i
ptdef
or
mat
opar
acor
r
egi
res
t
osar
chi
v
osyas
í
poder
t
r
abaj
arconunCSV.
Obs
er
v
aci
onesmet
eor
ol
ógi
casenT
XT
FECHA
TMAX TMIN
-------- ----- ----07122017 28.0 19.0
07122017 26.8 12.4
NOMBRE
---------------------------------------AEROPARQUE AERO
AZUL AERO
-28-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
07122017
07122017
07122017
07122017
07122017
07122017
29.6
22.7
3.0
2.4
3.9
0.7
7.8
6.7
-8.5
-0.2
-0.6
-3.6
BAHIA BLANCA AERO
BARILOCHE AERO
BASE BELGRANO II
BASE CARLINI (EX JUBANY)
BASE ESPERANZA
BASE MARAMBIO
TRABAJAR CON ARCHIVOS CSV DESDE PYTHON
Py
t
honpr
ov
eedeunmódul
opr
opi
ol
l
amadocs
v
,
quef
aci
l
i
t
ael
par
s
eodel
os
dat
osdear
chi
v
osCSV,
t
ant
opar
al
ect
ur
acomoes
cr
i
t
ur
a.
Es
t
emódul
o,
s
eut
i
l
i
z
aencombi
naci
ónconl
aes
t
r
uct
ur
awi
t
hyl
af
unci
ónopen,
par
al
eerogener
arel
ar
chi
v
o,
yel
módul
oCSVpar
as
uanál
i
s
i
s(
par
s
i
ng)
.
LECTURA DE ARCHIVOS CSV
Cont
eni
dodear
chi
v
o.
cs
v
0;2016-03-01
1;2016-03-01
2;2016-03-01
3;2016-03-01
4;2016-03-01
5;2016-03-01
6;2016-03-01
7;2016-03-01
8;2016-03-01
00:00:00;;;9.9;73;;;
00:30:00;;;9.0;67;;;
01:00:00;;;8.3;64;;;
01:30:00;;;8.0;61;;;
02:00:00;;;7.4;62;;;
02:30:00;;;8.3;47;;;
03:00:00;;;7.7;50;;;
03:30:00;;;9.0;39;;;
04:00:00;;;8.7;39;;;
from csv import reader
with open("archivo.csv", "r") as archivo:
documento = reader(archivo, delimiter=';', quotechar='"')
for fila in documento:
' '.join(fila)
Sal
i
da:
'0
'1
'2
'3
'4
'5
'6
'7
'8
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
00:00:00
00:30:00
01:00:00
01:30:00
02:00:00
02:30:00
03:00:00
03:30:00
04:00:00
9.9
9.0
8.3
8.0
7.4
8.3
7.7
9.0
8.7
73
67
64
61
62
47
50
39
39
'
'
'
'
'
'
'
'
'
-29-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Cuandoel
ar
chi
v
oCSVt
i
eneunacabecer
a,esneces
ar
i
os
al
t
ardi
cho
encabez
ado:
Cont
eni
dodear
chi
v
o.
cs
v
ID;DATA;VV;DV;T;HR;PPT;RS;P
0;2016-03-01 00:00:00;;;9.9;73;;;
1;2016-03-01 00:30:00;;;9.0;67;;;
2;2016-03-01 01:00:00;;;8.3;64;;;
3;2016-03-01 01:30:00;;;8.0;61;;;
4;2016-03-01 02:00:00;;;7.4;62;;;
5;2016-03-01 02:30:00;;;8.3;47;;;
6;2016-03-01 03:00:00;;;7.7;50;;;
7;2016-03-01 03:30:00;;;9.0;39;;;
8;2016-03-01 04:00:00;;;8.7;39;;;
from csv import reader
with open("archivo.csv", "r") as archivo:
documento = reader(archivo, delimiter=';', quotechar='"')
cabeceras = next(documento)
for fila in documento:
' '.join(fila)
Sal
i
da:
'0
'1
'2
'3
'4
'5
'6
'7
'8
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
2016-03-01
00:00:00
00:30:00
01:00:00
01:30:00
02:00:00
02:30:00
03:00:00
03:30:00
04:00:00
9.9
9.0
8.3
8.0
7.4
8.3
7.7
9.0
8.7
73
67
64
61
62
47
50
39
39
'
'
'
'
'
'
'
'
'
Ot
r
af
or
madel
eerar
chi
v
osCSVconcabecer
as
,
esut
i
l
i
z
arel
obj
et
o
Di
ct
Readerenv
ezder
eader
,yas
í
acceders
ol
oal
v
al
ordel
ascol
umnas
des
eadas
,
pors
unombr
e:
from csv import DictReader
with open("archivo.csv", "r") as archivo:
documento = DictReader(archivo, delimiter=';', quotechar='"')
for fila in documento:
fila['DATA']
-30-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Sal
i
da:
'2016-03-01
'2016-03-01
'2016-03-01
'2016-03-01
'2016-03-01
'2016-03-01
'2016-03-01
'2016-03-01
'2016-03-01
00:00:00'
00:30:00'
01:00:00'
01:30:00'
02:00:00'
02:30:00'
03:00:00'
03:30:00'
04:00:00'
ESCRITURA DE ARCHIVOS CSV
Es
cr
i
t
ur
adeunCSVs
i
ncabecer
a:
from csv import writer
with open("datos.csv", "w") as archivo:
documento = writer(archivo, delimiter=';', quotechar='"')
documento.writerows(matriz)
Enel
ej
empl
oant
er
i
or
,unamat
r
i
zpodr
í
as
erunal
i
s
t
adel
i
s
t
asconi
gual
cant
i
daddeel
ement
os
.Porej
empl
o:
matriz = [
['Juan', 373, 1970],
['Ana', 124, 1983],
['Pedro', 901, 1650],
['Rosa', 300, 2000],
['Juana', 75, 1975],
]
L
oant
er
i
or
,
gener
ar
í
aunar
chi
v
ol
l
amadodat
os
.
cs
vconel
s
i
gui
ent
econt
eni
do:
eugenia@bella:~$ cat datos.csv
Juan;373;1970
Ana;124;1983
Pedro;901;1650
Rosa;300;2000
Juana;75;1975
-31-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Es
cr
i
t
ur
adeunCSVconcabecer
a:
Enes
t
ecas
o,
l
amat
r
i
zas
eres
cr
i
t
ar
equer
i
r
ás
erunal
i
s
t
adedi
cci
onar
i
oscuy
as
cl
av
escoi
nci
danconl
ascabecer
asi
ndi
cadas
.
matriz = [
dict(jugador='Juan', puntos=373, anio=1970),
dict(jugador='Ana', puntos=124, anio=1983),
dict(jugador='Pedro', puntos=901, anio=1650),
dict(jugador='Rosa', puntos=300, anio=2000),
dict(jugador='Juana', puntos=75, anio=1975),
]
from csv import DictWriter
cabeceras = ['jugador', 'puntos', 'anio']
with open("datos.csv", "w") as archivo:
documento = DictWriter(archivo, delimiter=';', quotechar='"',
fieldnames=cabeceras)
documento.writeheader()
documento.writerows(matriz)
Funci
onesest
adí
st
i
cassi
mpl
es
Sobr
el
i
s
t
asyt
upl
asobt
eni
dasonoapar
t
i
rdeunCSV,
puedenef
ect
uar
s
e
f
unci
oneses
t
adí
s
t
i
cass
i
mpl
escomol
ass
i
gui
ent
es
:
Contar elementos
Sumar elementos
Obtener número mayor
Obtener numero menor
len(coleccion)
sum(coleccion)
max(coleccion)
min(coleccion)
-32-
PROBABILIDAD Y ESTADÍSTICA CON PYTHON
PROBABILIDAD DE SUCESOS SIMPLES Y COMPUESTOS
MUTUAMENTE EXCLUYENTES EN PYTHON
ESPACIO MUESTRAL
Unespaci
omuest
r
alesunconj
unt
odes
uces
ospos
i
bl
es
,comol
osque
podr
í
anr
es
ul
t
aral
l
anz
arundado:
espacio_muestral = [1, 2, 3, 4, 5, 6]
Ser
ef
i
er
ecomopunt
omuest
r
alacadael
ement
oenunes
paci
omues
t
r
al
.L
a
cant
i
daddepunt
osmues
t
r
al
ess
edenot
apor t
al
quepar
ael
es
paci
o
mues
t
r
al
,
.
n = len(espacio_muestral)
SUCESOS SIMPLES Y COMPUESTOS
Unsuceso,
esunconj
unt
oder
es
ul
t
adosdent
r
odeunes
paci
omues
t
r
al
.Por
ej
empl
o:
• el
l
anz
ami
ent
odeundadoesuns
uces
o
• l
apr
obabi
l
i
daddequeendi
chol
anz
ami
ent
os
al
gael
númer
o5,
esun
sucesosi
mpl
e
yesexcl
uy
ent
e:s
i
s
al
e5,nopuede
s
i
mul
t
áneament
es
al
i
rni
ngúnot
r
onúmer
o.
• l
apr
obabi
l
i
daddequeenel
l
anz
ami
ent
os
al
gaunnúmer
oi
mpar
,
esel
sucesocompuest
o
s
i
mpl
esex
cl
uy
ent
es
quedepender
áas
uv
ezdel
oss
uces
os
,
y
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
ASIGNACIÓN DE PROBABILIDADES
L
aas
i
gnaci
óndepr
obabi
l
i
dadesesaquel
l
aquepr
ov
eemodel
osmat
emát
i
cos
par
acal
cul
arl
aspos
i
bi
l
i
dadesdeques
uces
oses
pecí
f
i
cosocur
r
anono.
L
apr
obabi
l
i
daddeuns
uces
os
edenot
apor
.
L
oss
uces
ospuedens
er
:
• s
i
mpl
esocompues
t
os
• mut
uament
eex
cl
u
y
ent
esoi
ndependi
ent
es
SUCESOS SIMPLES MUTUAMENTE EXCLUYENTES
Sis
econs
i
der
aunes
paci
omues
t
r
al ,
cadaunodel
ospunt
osmues
t
r
al
es ,
quedar
ádenot
adopor yl
apr
obabi
l
i
daddeés
t
os
,des
i
gnadacomo
,
quedar
ádet
er
mi
nadapor
:
probabilidad = 1.0 / n
EnPy
t
hon,s
er
equi
er
equeal
menosunel
ement
odel
aecuaci
óns
ea
unnúmer
or
eal
s
il
oques
er
equi
er
ecomor
es
ul
t
adoesunnúmer
or
eal
.
L
apr
obabi
l
i
daddecadapunt
omues
t
r
al
,
comos
uces
osex
cl
uy
ent
esent
r
es
í
,
es
l
ami
s
mapar
acadas
uces
o.
-35-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
SUCESOS COMPUESTOS POR SUCESOS SIMPLES MUTUAMENTE
EXCLUYENTES
Cuandol
oss
uces
oss
i
mpl
esqueconf
or
maal
s
uces
ocompues
t
o s
on
mut
uament
eex
cl
uy
ent
e,
l
apr
obabi
l
i
daddel
s
uces
ocompues
t
oes
t
ar
ádadapor
l
as
umadel
aspr
obabi
l
i
dadesdecadas
uces
os
i
mpl
e
,
t
al
que:
Porej
empl
o,
par
aes
t
i
marl
apr
obabi
l
i
daddequeenunúni
col
anz
ami
ent
ode
dado,
s
al
gaunnúmer
opar
,
s
eobt
i
eneel
s
uces
o
del
aspr
obabi
l
i
dadesdecadaunodes
uces
oss
i
mpl
es
es
paci
omues
t
r
al
,
dadopors
uma
del
t
al
que:
Enel
pr
i
merr
es
ul
t
ado (
enel
s
egundopas
o,
ant
esdehal
l
arel
máx
i
mocomún
di
v
i
s
or[
MCD]yr
educi
rl
af
r
acci
óna )
,el
denomi
nadoresequi
v
al
ent
eal
a
cant
i
daddes
uces
oss
i
mpl
esdent
r
odel
s
uces
ocompues
t
o«númer
ospar
es
»y
s
edenot
apor .El
denomi
nador
,,
es ,
el
t
ot
al
det
odosl
oss
uces
osdel
es
paci
omues
t
r
al
.Dees
t
af
or
ma,
l
apr
obabi
l
i
daddeuns
uces
ocompues
t
o
pors
uces
osmut
uament
eex
cl
uy
ent
esquedadadaporel
coci
ent
ede y t
al
que:
numeros_pares = [i for i in espacio_muestral if i % 2 is 0]
h = len(numeros_pares)
probabilidad = float(h) / n
-36-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Uns
uces
ocompues
t
os
epuededenot
arporl
auni
óndes
uss
uces
oss
i
mpl
es
(
s
í
mbol
o ,
l
eí
docomo"
o"
)
,
t
al
que:
Porej
empl
o,
par
ael
cas
odel
s
uces
o«númer
ospar
es,
» s
eobt
i
eneque:
T
al
que
esuns
uces
oy
,
y
s
onl
aspr
obabi
l
i
dadesde
l
ost
r
ess
uces
osquel
ocomponen.Enunnuev
ocont
ex
t
o,
t
r
at
adocomouns
uces
o .
FUNCIONES
# Probabilidad de sucesos simples mutuamente excluyentes
pssme = lambda e: 1.0 / len(e)
# Probabilidad de sucesos compuestos mutuamente excluyentes
def pscme(e, sc):
n = len(e)
return len(sc) / float(n)
PROBABILIDAD CONDICIONAL EN PYTHON
c.Pr
obabi
l
i
daddeB:
d.Pr
obabi
l
i
daddel
ai
nt
er
s
ecci
ón:
e = espacio_muestral = [1, 2, 3, 4, 5, 6]
n = len(e) # total de la muestra
# probabilidad de A
a = [i for i in e if i % 2 is not 0]
pa = len(a) / float(n)
-37-
puedes
er
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
# probabilidad de B
b = [i for i in e if i % 2 is 0]
pb = len(b) / float(n)
# probabilidad de la intersección de sucesos
pi = pa * pb
FUNCIONES
# Probabilidad condicional: sucesos dependientes
def pscd(e, a, b):
i = list(set(a).intersection(b))
pi = pscme(e, i)
pa = pscme(e, a)
return pi / pa
# Probabilidad condicional: sucesos independientes
def psci(e, a, b):
pa = pscme(e, a)
pb = pscme(e, b)
return pa * pb
SUCESOS DEPENDIENTES
Ser
ef
i
er
eal
apr
obabi
l
i
daddequedoss
uces
osocur
r
ans
i
mul
t
áneament
e
s
i
endoqueel
s
egundos
uces
odependedel
aocur
r
enci
adel
pr
i
mer
o.
i
ocur
r
e ,
s
edenot
apor
L
apr
obabi
l
i
daddequeocur
r
a s
ys
el
ee
como“
l
apr
obabi
l
i
daddeBdadoA”
,
t
al
que:
Donde
esl
apr
obabi
l
i
daddel
ai
nt
er
s
ecci
óndel
oss
uces
osde y
—def
i
ni
dacomo:
—,
t
al
quel
ai
nt
er
s
ecci
ónesun
nuev
os
uces
ocompues
t
opors
uces
oss
i
mpl
es
.Enel
s
i
gui
ent
eej
empl
o,
equi
v
al
dr
í
aa
(
por
que1y3es
t
ánt
ant
oen comoen )
.
Ej
empl
o:¿quépr
obabi
l
i
dadex
i
s
t
edequeal
l
anz
arundador
es
ul
t
eunnúmer
o
i
mparmenorque4?
-38-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
El
l
anz
ami
ent
odel
dadoesuns
uces
oens
í
mi
s
mo.Sedes
eaav
er
i
guarl
a
pr
obabi
l
i
dadde
(
númer
omenorque4)dadoque
(
númer
oi
mpar
)ocur
r
i
es
eenel
es
paci
omues
t
r
al
.
espacio_muestral = [1, 2, 3, 4, 5, 6]
a = [i for i in espacio_muestral if i % 2 is not 0]
b = [i for i in espacio_muestral if i < 4]
Par
acal
cul
arl
apr
obabi
l
i
daddeunai
nt
er
s
ecci
ón,
pr
i
mer
os
eobt
i
enel
a
i
nt
er
s
ecci
ón:
intersec = [i for i in a if i in b]
Yl
uego,
s
ecal
cul
al
apr
obabi
l
i
daddel
nuev
os
uces
ocompues
t
o
:
o,l
oqueesi
gual
:
Esneces
ar
i
oademás
,obt
enerl
apr
obabi
l
i
dadde ,
t
eni
endoencuent
aque
est
ambi
énuns
uces
ocompues
t
o:
F
i
nal
ment
e,
s
eobt
i
eneque:
e = espacio_muestral = [1, 2, 3, 4, 5, 6]
a = [i for i in e if i % 2 is not 0]
b = [i for i in e if i < 4]
# números impares
# números menores que 4
-39-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
intersec = [i for i in a if i in b]
n = len(e)
ha = len(a)
hintersec = len(intersec)
# intersección de A y B
# total de la muestra
# total de sucesos simples en A
# total de sucesos simples en la intersección
# probabilidad de la intersección
probabilidad_intersec = float(hintersec) / n
# probabilidad de 'a'
probabilidad_a = float(ha) / n
# probabilidad condicional
probabilidad_b_dado_a = probabilidad_intersec / probabilidad_a
TEORÍA DE CONJUNTOS EN PYTHON
Al
obt
enerl
ai
nt
er
s
ecci
óndedoss
uces
oscompues
t
oss
ehaempl
eadoun
mét
odomanual
al
deci
r
:dev
ol
v
er'
i
'
porcada'
i
'
enl
al
i
s
t
a'
a'
s
i
es
t
áenl
al
i
s
t
a
'
b'
.
Noobs
t
ant
e,
dadoquecadas
uces
ocompues
t
oesunconj
unt
oyquePy
t
hon
pr
ov
eeunt
i
podedat
osl
l
amadoset (
conj
unt
o)
,
espos
i
bl
eobt
enerl
a
i
nt
er
s
ecci
ónmani
pul
andol
oss
uces
oscompues
t
oscomoconj
unt
osdePy
t
hon.
Conset s
epuedeconv
er
t
i
rcual
qui
eri
t
er
abl
eaconj
unt
oyr
eal
i
z
ar
oper
aci
onesdeconj
unt
oscomouni
ónei
nt
er
s
ecci
óncuandos
eaneces
ar
i
o.
intersec = list(set(a).intersection(b))
Aquíel
conj
unt
oobt
eni
dos
econv
i
er
t
eenl
i
s
t
aaf
i
naf
i
ndeguar
darcoher
enci
a
conel
r
es
t
odel
códi
goyqueel
el
ement
or
es
ul
t
ant
es
opor
t
el
asoper
aci
onesy
t
r
at
ami
ent
ohabi
t
ual
esdeunal
i
s
t
a.Ant
el
adudades
i
cor
r
es
pondeus
arl
i
s
t
aso
conj
unt
os
,s
edebeapl
i
carel
pr
i
nci
pi
odes
i
mpl
i
ci
dadei
mpl
ement
arl
as
ol
uci
ón
máss
i
mpl
e.
SUCESOS INDEPENDIENTES
Adi
f
er
enci
adel
cas
oant
er
i
or
,
aquí
l
apr
obabi
l
i
daddequeocu
r
r
a noes
t
á
af
ect
aporl
aocur
r
enci
ade .Porej
empl
o,
l
apr
obabi
l
i
daddel
an
z
arundado
-40-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
yobt
enerunnúmer
opar(
s
uces
oB)noes
t
áaf
ect
adaporel
hechodequeenun
l
anz
ami
ent
opr
ev
i
os
eobt
uv
i
es
eunnúmer
oi
mpar(
s
uces
oA)
.L
apr
obabi
l
i
dad
deBesi
ndependi
ent
edeAyes
t
ádadaporel
pr
oduct
odel
apr
obabi
l
i
dadde
amboss
uces
os
:
Aquíl
ai
nt
er
s
ecci
ónesl
apr
obabi
l
i
daddequeconf
l
uy
anamboss
uces
os
.
Cal
cul
adal
apr
obabi
l
i
daddeamboss
uces
osi
ndependi
ent
es
,
s
emul
t
i
pl
i
can
obt
eni
endo:
a.Es
paci
omues
t
r
al
(
par
aamboss
uces
os
)
:
b.Pr
obabi
l
i
daddeA:
TEOREMA DE BAYES EN PYTHON
TEOREMA DE BAYES Y PROBABILIDAD DE CAUSAS
Dadaunas
er
i
edes
uces
os
cu
y
as
umat
ot
al
esunes
paci
omues
t
r
al yun
s
uces
o cual
qui
er
a,
el
T
eor
emadeBay
esper
mi
t
econocerl
apr
obabi
l
i
dadde
quecadas
uces
o
de ,
s
eal
acaus
ade .Pores
t
emot
i
v
o,
t
ambi
éns
el
o
conocecomopr
obabi
l
i
daddecausas.
DATOS: CASO PRÁCTICO
Dadaunaci
udadde50000habi
t
ant
es,conl
as
i
gui
ent
edi
s
t
r
i
buci
ón:
-41-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Ni
ñas Ni
ños
1
1
000 9000
Muj
er
es
1
6000
Hombr
es
1
4000
Y,
unr
epor
t
ede9000casosdegr
i
pe,di
s
t
r
i
bui
dosdel
as
i
gui
ent
ef
or
ma:
Ni
ñas Ni
ños
2000 1
500
Muj
er
es
3000
Hombr
es
2500
Sepr
et
endeobt
enerl
apr
obabi
l
i
daddequel
acaus
adecont
r
aergr
i
pes
eael
hechodeper
t
encesaundet
er
mi
nados
ect
ordemogr
áf
i
co(
porej
empl
o,
al
s
ect
ordemogr
áf
i
coconf
or
madoporni
ñosoni
ñas
)
.
ANÁLISIS
Del
oex
pues
t
outs
upr
as
eobt
i
eneque:
• L
aci
udad(
t
ot
al
abs
ol
ut
odehabi
t
ant
es
)esel
es
paci
omues
t
r
al .
• L
acant
i
daddeni
ñas
,
ni
ños
,
muj
er
esyhombr
esescadaunodel
os
s
uces
os
del
es
paci
omues
t
r
al
• Comov
al
orde s
et
omal
as
umadel
es
paci
omues
t
r
al
• El
v
al
orde par
al
oss
uces
os
,
t
al
que
escadaunodel
osv
al
or
esdadosenl
a
t
abl
adedi
s
t
r
i
buci
óndehabi
t
ant
es
.
• T
energr
i
peesel
s
uces
o .
• L
at
abl
adedi
s
t
r
i
buci
óndecas
osdegr
i
pe,s
ecor
r
es
pondeal
as
i
nt
er
s
ecci
onesdel
s
uces
o concadas
uces
o
,
esdeci
racada
Segúnel
cál
cul
odepr
obabi
l
i
dadques
eapl
i
que,s
epodr
áobt
ener
:
-42-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
• L
apr
obabi
l
i
daddes
erni
ña,
ni
ño,
muj
eruhombr
eenl
aci
udad,pormedi
o
de
.Secons
i
der
aunapr
obabi
l
i
dadapr
i
or
i
.
• L
apr
obabi
l
i
daddes
erni
ña,
ni
ño,
muj
eruhombr
eyt
energr
i
pe,
ques
e
obt
i
enecon
ys
econs
i
der
aunapr
obabi
l
i
dadcondi
ci
onal
.
• L
apr
obabi
l
i
daddequecual
qui
erhabi
t
ant
e,i
ndependi
ent
ement
edel
s
ect
oral
queper
t
enez
cat
engagr
i
pe,
s
eobt
i
enecon
ys
el
acons
i
der
aunapr
obabi
l
i
dadt
ot
al
.
• L
apr
obabi
l
i
daddequeal
gui
encongr
i
pes
eani
ña,
ni
ño,
muj
eruhombr
e
s
eobt
i
eneconel
T
eor
emadeBay
es.Aes
t
apr
obabi
l
i
dads
el
acons
i
der
a
unapr
obabi
l
i
dadapost
er
i
or
i
,per
mi
t
i
endodarr
es
pues
t
aapr
egunt
as
cómo¿cuál
esl
apr
obabi
l
i
daddequeunnuev
ocas
odegr
i
pes
eadeen
unni
ñooni
ña?
Unaf
or
maef
i
cazyor
denadadeobt
enerunapr
obabi
l
i
dadapos
t
er
i
or
iconel
T
eor
emadeBay
es
,esobt
enerpr
i
mer
ol
ast
r
espr
obabi
l
i
dadespr
ev
i
as
:apr
i
or
i
,
condi
ci
onal
yt
ot
al
.
AVI
SO:
enl
os
uces
i
v
o,s
eut
i
l
i
z
ar
ámap(float, <lista>) enel
códi
go
f
uent
e,
par
aconv
er
t
i
rl
osel
ement
osdeunal
i
s
t
aennúmer
osr
eal
es
,
t
odav
ezquehacer
l
onos
obr
ecar
gueel
códi
go.
PROCEDIMIENTO
1
.Cál
cul
odepr
obabi
l
i
dadapr
i
or
i
Ret
or
na:pr
obabi
l
i
daddequeunhabi
t
ant
eper
t
enez
caauns
ect
or
demogr
áf
i
coes
pecí
f
i
co.
-43-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Fór
mul
a:
Dat
osnecesar
i
os:
=dat
osdel
at
abl
adedi
s
t
r
i
buci
óndehabi
t
ant
es
=s
i
empr
eesl
acant
i
dadt
ot
al
del
es
paci
omues
t
r
al
(
50000)
Resul
t
ados:
pr
obabi
l
i
daddes
erni
ña
pr
obabi
l
i
daddes
erni
ño
pr
obabi
l
i
daddes
ermuj
er
pr
obabi
l
i
daddes
erhombr
e
Códi
goPy
t
hon:
habitantes = map(float, [11000, 9000, 16000, 14000])
n = sum(habitantes)
pa = [h / n for h in habitantes]
2.Pr
obabi
l
i
dadcondi
ci
onal
Ret
or
na:pr
obabi
l
i
daddet
energr
i
peper
t
eneci
endoauns
ect
ordemogr
áf
i
co
es
pecí
f
i
co.
Cer
t
ez
a: (
el
s
ect
ordemogr
áf
i
co)
Obj
et
i
v
o: (
l
apr
obabi
l
i
daddet
energr
i
pe)
-44-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Fór
mul
a:
Dat
osnecesar
i
os:
=
=i
nt
er
s
ecci
ones(
dat
osdel
at
abl
adedi
s
t
r
i
buci
óndecas
osdegr
i
pe)
Resul
t
ados:
pr
obabi
l
i
daddet
energr
i
pes
i
endoni
ña
pr
obabi
l
i
daddet
energr
i
pes
i
endoni
ño
pr
obabi
l
i
daddet
energr
i
pes
i
endomuj
er
pr
obabi
l
i
daddet
energr
i
pes
i
endohombr
e
Códi
goPy
t
hon:
afectados = map(float, [2000, 1500, 3000, 2500])
pi = [k / n for k in afectados]
pba = [pi[i] / pa[i] for i in range(len(pi))]
3.Pr
obabi
l
i
dadt
ot
al
Ret
or
na:pr
obabi
l
i
daddequecual
qui
er
adel
oshabi
t
ant
es
,
i
ndependi
ent
ement
edel
s
ect
ordemogr
áf
i
coal
queper
t
enez
can,puedat
ener
gr
i
pe.
-45-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
Fór
mul
a:
Dat
osnecesar
i
os:
pr
obabi
l
i
dadapr
i
or
i
pr
obabi
l
i
dadcondi
ci
onal
Resul
t
ados:
Códi
goPy
t
hon:
productos = [pa[i] * pba[i] for i in range(len(pa))]
pb = sum(productos)
Obs
er
v
aci
ones
:
(
a)not
arqueenl
as
al
i
daant
er
i
orex
i
s
t
i
r
áunadi
f
er
enci
ade.
01conr
es
pect
oa
l
as
ol
uci
ónmanual
.Es
t
oesdebi
doal
r
edondeoef
ect
uadoenl
as
ol
uci
ón
manual
.Di
chadi
f
er
enci
apuedes
erer
r
adi
cadaempl
eando3deci
mal
esenl
os
v
al
or
esdel
apr
obabi
l
i
dadcondi
ci
onal
(
enl
ugardedos
)enl
as
ol
uci
ónmanual
.
-46-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
(
b)l
apr
obabi
l
i
daddeNO t
energr
i
pees
t
ar
ádadapor
t
al
que
per
onos
er
áneces
ar
i
out
i
l
i
z
ar
l
apar
aes
t
eej
empl
oconel
T
eor
emadeBay
es
.
4.Pr
obabi
l
i
dadapost
er
i
or
i
Ret
or
na:pr
obabi
l
i
daddeper
t
enecerauns
ect
ordemogr
áf
i
coes
pecí
f
i
coy
t
energr
i
pe.
Cer
t
ez
a: (
t
energr
i
pe)
Obj
et
i
v
o: (
l
apr
obabi
l
i
daddeper
t
enecerauns
ect
ordemogr
áf
i
coconcr
et
o)
Fór
mul
a:
Dat
osnecesar
i
os:
=el
pr
oduct
oobt
eni
doencadaunodel
ost
ér
mi
nosdel
a
pr
obabi
l
i
dadt
ot
al
=l
apr
obabi
l
i
dadt
ot
al
Resul
t
ados:
pr
obabi
l
i
daddes
erni
ñat
eni
endogr
i
pe
pr
obabi
l
i
daddes
erni
ñot
eni
endogr
i
pe
-47-
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
pr
obabi
l
i
daddes
ermuj
ert
eni
endogr
i
pe
pr
obabi
l
i
daddes
erhombr
et
eni
endogr
i
pe
Códi
goPy
t
hon:
pab = [p / pb for p in productos]
FUNCIONES
# Teorema de Bayes
def bayes(e, b):
n = float(sum(e))
pa = [h / n for h in e]
pi = [k / n for k in b]
pba = [pi[i] / pa[i] for i in range(len(pi))]
prods = [pa[i] * pba[i] for i in range(len(pa))]
ptb = sum(prods)
pab = [p / pb for p in prods]
return pab
BIBLIOGRAFÍA COMPLEMENTARIA
[
0]Pr
obabi
l
i
dadyEs
t
adí
s
t
i
ca,
Mur
r
aySpi
egel
.McGr
awHi
l
l
,
Méx
i
co1
988.I
SBN:
9
68451
1
027
-48-
ANEXO I: CÁLCULOS COMPLEJOS
ESTADÍSTICA POBLACIONAL Y MUESTRAL: CÁLCULO DE
VARIANZA Y DESVÍO ESTÁNDAR
from math import sqrt
muestras = [12, 23, 24, 22, 10, 17]
# lista de ejemplo
n = len(muestras)
media = sum(muestras) / float(n)
diferencias = [xi - media for xi in muestras]
potencias = [x ** 2 for x in diferencias]
sumatoria = sum(potencias)
varianza_muestral = sumatoria / (n - 1)
varianza_poblacional = sumatoria / n
desvio_muestral = sqrt(varianza_muestral)
desvio_poblacional = sqrt(varianza_poblacional)
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
PRODUCTO ESCALAR DE DOS VECTORES
vector1 = [3, 0]
vvector2 = [4, 3]
pe = sum([x * y for x, y in zip(vector1, vector2)])
CÁLCULOS DE FRECUENCIA RELATIVA, ABSOLUTA Y
ACUMULADA
# FRECUENCIA ABSOLUTA
# Cantidad de veces que un valor aparece en una muestra
muestras = [1, 2, 3, 4, 3, 2, 6, 7, 3, 3, 1, 8, 5, 9]
absolutos = []
frecuencias = []
for n in muestras:
if not n in absolutos:
absolutos.append(n)
fi = muestras.count(n)
frecuencias.append(fi)
N = sum(frecuencias)
# == len(muestras)
# FRECUENCIA RELATIVA
# Cociente entre la frecuencia absoluta y N
relativas = [float(fi) / N for fi in frecuencias]
sumarelativas = round(sum(relativas)) # == 1
# FRECUENCIA ACUMULADA
# Suma de todas las frecuencias menores o iguales a la frecuencia absoluta
frecuencias.sort()
acumuladas = [sum(frecuencias[:i+1]) for i, fi in enumerate(frecuencias)]
# FRECUENCIA RELATIVA ACUMULADA
# Cociente entre frecuencia acumulada y cantidad total de datos
relacumuladas = [float(f) / N for f in acumuladas]
-55-
ANEXO II: CREACIÓN DE UN MENÚ DE OPCIONES
Enel
s
cr
i
pt
i
ng,pueder
es
ul
t
arút
i
l
,
daral
us
uar
i
ounmenúdeopci
onesyhacer
queel
s
cr
i
pt
,act
úes
egúnl
aopci
ónel
egi
daporel
us
uar
i
o.Acont
i
nuaci
ón,s
e
mues
t
r
aunt
r
ucopar
ar
es
ol
v
eres
t
odef
or
mas
i
mpl
eei
ngeni
os
a.
1
)Pr
i
mer
oesneces
ar
i
oquet
odoels
cr
i
ptes
t
éor
gani
z
adoenf
unci
ones
.
2)Ens
egundol
ugar
,esneces
ar
i
oquet
odasl
asf
unci
onest
engans
u
document
aci
óncor
r
es
pondi
ent
e,def
i
ni
endoquéesex
act
ament
el
oquehace
l
af
unci
ón:
def leer_archivo():
"""Leer archivo CSV"""
return "leer"
def escribir_archivo():
"""Escribir archivo CSV"""
return "escribir"
def _sumar_numeros(lista):
"""Sumar los números de una lista"""
return "privada"
3)Acont
i
nuaci
ón,s
edef
i
neunal
i
s
t
aconel
nombr
edet
odasl
asf
unci
onesque
s
er
ánacces
i
bl
esporel
us
uar
i
o,
des
deel
menú:
funciones = ['leer_archivo', 'escribir_archivo']
El
t
r
ucocons
i
s
t
i
r
áenaut
omat
i
z
art
ant
ol
agener
aci
óndel
menú,
comol
a
l
l
amadaal
af
unci
ón.
Par
aaut
omat
i
z
arl
agener
aci
óndelmenú,el
t
r
ucocons
i
s
t
eenv
al
er
s
ede:
▪ L
al
i
s
t
adel
pas
o3
I
nt
r
oducci
ónal
aCi
enci
adeDat
osconPy
t
hon-Es
cuel
adeI
nf
or
mát
i
caEugeni
aBahi
t
▪ L
af
unci
ónl
ocal
s
(
)
▪ El
at
r
i
but
o__doc__
numero = 1 # se usará luego para acceder a la función
menu = "Elija una opción:\n"
for funcion in funciones:
menu += "\t{}. {}\n".format(numero, locals()[funcion].__doc__)
numero = numero + 1 # incrementa el número en cada iteración
echo(menu)
opcion = int(get("Su opción: "))
# echo y get: hacks aprendidos en el curso de introducción
F
i
nal
ment
e,
par
aaccederdi
námi
cament
eal
af
unci
ónel
egi
daporel
us
uar
i
o,
el
t
r
ucocons
i
s
t
i
r
áenempl
earl
aopci
ónel
egi
daporel
us
uar
i
o,comoí
ndi
ce
par
aaccederal
nombr
edel
af
unci
óndes
del
al
i
s
t
a,
yr
ecur
r
i
rnuev
ament
ea
l
ocal
spar
ai
nv
ocaral
af
unci
ón:
funcion = funciones[opcion – 1]
locals()[funcion]()
# se obtiene el nombre de la función
# se invoca a la función mediante locals()
-58-
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.eugeniabahit.org.
Si necesitas preparar tu examen, puedes inscribirte en el
C u r so de Ci en c ia d e D atos c on 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
Descargar