PDF de programación - Hoja Resumen de Python 3

Imágen de pdf Hoja Resumen de Python 3

Hoja Resumen de Python 3gráfica de visualizaciones

Publicado el 6 de Mayo del 2018
11.862 visualizaciones desde el 6 de Mayo del 2018
166,2 KB
2 paginas
Creado hace 9a (23/09/2014)
©2012-2013 - Laurent Pointal
Licencia Creative Commons Atribución 2

Mémento v1.2.2

Hoja Resumen de Python 3

enteros, reales, lógicos, textos

Tipos Base

int
float
bool
str

-192

0
0.0
False

783
9.23
True
"Uno\nDos" 'Pa\'mi'

-1.7e-6
10-6

nueva línea
multilínea

cadena inmutable,
secuencia ordenada de letras

' escaped
"""X\tY\tZ
1\t2\t3"""

tabulación

◾ secuencia ordenada, índices rápidos, valores repetibles

list [1,5,9]
tuple (1,5,9)

["x",11,8.9] ["texto"] []
("texto",) ()
11,"y",7.4

inmutable
◾ sin orden previo, llave única, índices rápidos ; llaves = tipos base o tuplas

str como secuencia ordenada de caracteres

expresión separada por comas

dict
diccionario
asociaciones llave/valor

{"llave":"valor"}
{1:"uno",3:"tres",2:"dos",3.14:"π"}

{}

set

{"key1","key2"}

{1,9,3,0}

set()

Documentación oficial de Python
http://docs.python.org/py3k

Tipos Contenedores

Identificadores

para variables, funciones,
módulos, clases… nombres
a‥zA‥Z_ seguidos de a‥zA‥Z_0‥9
◽ acentos permitidos pero mejor evitarlos
◽ prohibido usar palabras de python
◽ discrimina minúsculas/MAYÚSCULAS
☺ a toto x7 y_max BigOne
☹ 8y and

Asignación de Variables

x = 1.2+8+sin(0)

valor o expresión calculada
nombre de variable (identificador)
y,z,r = 9.2,-7.6,"bad"
nombre de
variable
x+=3
x-=2
x=None «indefinido» valor constante

contenedor con varios
valores (aquí una tupla)
incrementar
decrementar

type(expresión)

Conversiones

se puede especificar la base en el 2do parámetro

int("15")
int(15.56) trunca la parte decimal (round(15.56) para redondear)
float("-11.24e8")
str(78.3)

y la representación literal

repr("Texto")

ver el reverso para mayor control al representar textos

use comparadores (con ==, !=, <, >, …), resultado lógico, valor de verdad

bool
list("abc")

use cada elemento
de una secuencia
dict([(3,"tres"),(1,"uno")])

set(["uno","dos"])

use cada elemento
de una secuencia

":".join(['toto','12','pswd'])
secuencia de textos
unir textos
"textos y espacios".split()

"1,4,8,2".split(",")

separar textos

['a','b','c']

{1:'uno',3:'tres'}

{'one','dos'}

'toto:12:pswd'

['textos','y','espacios']

['1','4','8','2']

Índices de secuencias

índices negativos
índices positivos

-6
0

-5
1

-4
2

-3
3

-2
4

-1
5

para listas, tuplas, textos, …
6

len(lst)

acceso individual a los valores [índice]

corte positivo

corte negativo

2
-4

0
1
-6 -5

lst=[11, 67, "abc", 3.14, 42, 1968] lst[1]→67
lst[-2]→42
acceso a sub-secuencias via [inicio corte:fin corte:pasos]
lst[1:3]→[67,"abc"]
lst[-3:-1]→[3.14,42]
lst[:3]→[11,67,"abc"]
lst[4:]→[42,1968]

5
-1
lst[:-1]→[11,67,"abc",3.14,42]
lst[1:-1]→[67,"abc",3.14,42]
lst[::2]→[11,"abc",42]
lst[:]→[11,67,"abc",3.14,42,1968]

lst[0]→11
lst[-1]→1968

4
-2

3
-3

6

primer valor

último valor

En secuencias mutables, se puede eliminar elementos con del lst[3:5] y modificar asignando lst[1:4]=['hop',9]

Omitiendo un parámetro de corte → de principio / hasta el fin.

=≥≤

Lógica Booleana
Comparadores: < > <= >= == !=≠
a and b
a or b
not a
True
False

valor constante verdadero
valor constante falso

y lógico
o lógico
no lógico

ambos simultáneamente

uno, el otro, o ambos

Bloques de Setencias

sentencia madre:
bloque de sentencias 1…

sentencia madre:
bloque de sentencias 2…


!
a
í
r
g
n
a
s
¡

sentencia siguiente a bloque 1

☝ números reales… valores aproximados!
Operadores: + - * / // % **
ab
resto de ÷

× ÷
÷ enteros

(1+5.3)*2→12.6
abs(-3.2)→3.2
round(3.57,1)→3.6

ángulos en radianes

Matemáticas
from math import sin,pi…
sin(pi/4)→0.707…
cos(2*pi/3)→-0.4999…
acos(0.5)→1.0471…
sqrt(81)→9.0 √
log(e**2)→2.0

etc. (cf doc)

Sentencias Condicionales

bloque de sentencias que
solo se ejecuta si la condición es verdadera
if expresión lógica:
bloque de sentencias
puede tener varios elif, elif... y solo un else al final,
ejemplo:
if x==42:
# solo si la expresión lógica x==42 se cumple
print("realmente verdad")
elif x>0:
# si no, si la expresión lógica x>0 se cumple
print("seamos positivos")
elif tamosListos:
# sino, si la variable lógica tamosListos es verdadera
print("mira, estamos listos")
else:
# en todos los otros casos
print("todo lo demás no fue")

bloque de sentencias que se repite
mientras la condición se cumpla

Sentencia Bucle Condicional

bloque de sentencias ejecutadas
para cada ítem de un contenedor o iterador

Sentencia Bucle Iterador

Control de Bucles
break

salir inmediatamente

continue

siguiente iteración

while expresión lógica:
bloque de sentencias

s = 0
i = 1

inicializaciones antes del bucle

condición con al menos un valor variable (aquí i)
while i <= 100:
# sentencias se ejecutan mientras i ≤ 100
s = s + i**2
i = i + 1

☝ cambiamos el valor condicional

i=100

s= ∑

i=1

i2

print("suma:",s)

resultado computado luego del bucle

☝ ¡ cuidado con hacer bucles infinitos !

print("v=",3,"cm :",x,",",y+4)

Entrada / Salida

ítemes a imprimir: valores literales, variables, expresiones

parámetros de print:
◽ sep=" " (separador de ítemes, espacio por omisión)
◽ end="\n" (caracter final, por omisión nueva línea)
◽ file=f (escribir a archivo, por omisión salida estándar)

s = input("Instrucciones:")

☝ input siempre retorna un texto, convertir a tipo requerido

(revisar Conversiones al reverso).

for variable in secuencia:
bloque de sentencias

recorre los valores de la secuencia
s = "un texto"
cnt = 0

inicializamos antes del bucle

variable de bucle, valor manejado por la sentencia for

for c in s:
if c == "t":
cnt = cnt + 1
print("encontramos",cnt,"'t'")

Contamos cantidad
de letras t en el texto

recorrer un dict/set = recorrer la secuencia de llaves
use cortes para recorrer una subsecuencia
Recorrer lo índices de una secuencia
◽ modificar el ítem correspondiente al índice
◽ accesar ítemes alrededor del índice (antes/después)
lst = [11,18,9,12,23,4,17]
perdidos = []
for idx in range(len(lst)):
val = lst[idx]
if val > 15:
perdidos.append(val)
lst[idx] = 15
print("modif:",lst,"-perd:",perdidos)
Recorrer simultáneamente los índices y valores de una secuencia:
for idx,val in enumerate(lst):

Limita los valores
mayores a 15, guarda
los valores perdidos.

uso frecuente en
bucles iterativos for

Generador de Secuencias de Enteros

por omisión 0

no inclusivo
range([inicio,]fin [,paso])

range(5)
range(3,8)
range(2,12,3)

0 1 2 3 4
3 4 5 6 7
2 5 8 11

range retorna un « generador », convertir a lista para ver
los valores, por ejemplo:
print(list(range(4)))

nombre de función (identificador)

Definir Funciones

parámetros nombrados

def nombfunc(p_x,p_y,p_z):
"""documentación"""
# bloque de sentencias, calcula result., etc.
return res
☝ parámetros y variables sólo
existen dentro del bloque y durante
la llamada a la función ("caja negra")

valor resultado.
si no hay resultado, se
retorna: return None

Invocar Funciones

r = nombfunc(3,i+2,2*i)

obtener el valor de retorno (opcional)

un argumento por parámetro

Formato de Textos

valores a formatear

directivas de formato
"model {} {} {}".format(x,y,r)
"{selección:formato!conversión}"
◽ Selection :
2
x
0.nombre
4[llave]
0[2]
◽ Formating :
relleno alineación signo anchomin.precisión~anchomax tipo

"{:+2.3f}".format(45.7273)
→'+45.727'
"{1:>10s}".format(8,"toto")
→' toto'
"{!r}".format("I'm")
→'"I\'m"'

s
o
l
p
m
e
j
E

str

+ - espacio

0 al inicio para rellenar con 0

< > ^ =
enteros: b binario, c caracter, d decimal (omisión), o octal, x or X hexa…
reales: e o E exponencial, f or F punto fijo, g or G general (omisión), 
cadenas: s …
◽ Conversión : s (texto legible) or r (representación literal)

% porcentaje

Traducción al Castellano, 2014 – Sebastian Silva

→ cuenta ítemes

→ copia ordenada

Operaciones sobre Contenedores
len(c)
Nota: Para diccionarios y conjuntos, las
min(c) max(c) sum(c)
operaciones son sobre las llaves.
sorted(c)
valor in c → lógico, operador de membresía in (de ausencia, not in)
enumerate(c)→ iterador sobre (índice,valor)
Especial para contenedores de secuencias (listas, tuplas, textos) :
reversed(c)
c.index(val)

c*5 → duplicados c+c2 → concadenar
c.count(val)

→ iterador inverso
→ posición

→ cuenta ocurrencias

Operaciones sobre Listas

☝ modificar lista original
lst.append(item)
lst.extend(seq)
lst.insert(idx,val)
lst.remove(val)
lst.pop(idx)
lst.sort() lst.reverse()

añadir ítem al final
añadir secuencia de ítemes al final
insertar ítem en un determinado índice
elimina el primer ítem con determinado valor
elimina determinado ítem y retorna su valor

ordena / invierte la lista original

Operaciones en Diccionarios Operaciones en Conjuntos
d[llave]=valor
d.clear()
d[llave]→valor del d[llave]
d.update(d2) actualiza/añade
d.keys()
d.values() ver las llaves, valores
d.items()
d.pop(llave)

Operadores:
| → unión (caracter barra vertical)
& → intersección
- ^ → diferencia/diferencia simétrica
< <= > >= → relaciones de inclusión
s.update(s2)
s.remove(llave)
s.discard(llave)

y asociaciones

asociaciones

s.add(valor)

Archivos
guardar datos a disco, volver a leerlos
f = open("doc.txt","w",encoding="utf8")

codificación de
caracteres en
archivo:
utf8 ascii
latin1 …
lectura

variable para
operaciones

nombre de
archivo
(+ruta…)

modo de apertura
◽ 'r' lectura
◽ 'w' escritura
◽ 'a' añadir…

consulte funciones en los módulos os y os.path

escritura

vacía si llegamos al fin

f.write("hola")
☝ text file → lee / escribe solo
textos, convierte convertir al tipo
requerido.
f.close() ☝ no olvider cerrar el archivo al final

leer la siguiente
línea

s = f.read(4)

s = f.readline()

si se omite cuantos
caracteres, se lee
todo el archivo

Cerrado automático pytónico : with open(…) as f:

muy común: bucle iterativo para leer las líneas de un archivo de textos
for linea in f :
# bloque que procesa cada línea
  • Links de descarga
http://lwp-l.com/pdf10860

Comentarios de: Hoja Resumen de Python 3 (1)

Marcelino Gajardo Labra
25 de Noviembre del 2018
estrellaestrellaestrellaestrellaestrella
saludos y gracias
Responder

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad