User Tools

Site Tools


python:syntax

Sintaxis

Python se basa en la tabulación. no tiene corchetes para delimitar el contenido de los bloques condicionales ni funcionales, sino que lo detecta automáticamente por la profundidad de las tabulaciones.

Condicionales

in

a = [1,2,3,4]
2 in a
True
 
b = {"pepe":"hola", 2:50, 8000:[1,2]}
"pepe" in b
True
b.__contains__("pepe")
True

if

No es tan abstracto como en PHP, que si el valor interno de un if es negativo salta, se le ha de especificar TRUE o FALSE a la fuerza. Por ejemplo, suele ocurrir que si no eneuntra una cadena devuelve “-1” y nos confiamos de que eso es FALSE. En Python no ocurre lo mismo:

if( href.find('external_click') >= 0 ):
  answer = "externo"
else:
  answer = href

Ejemplo: Generación automática de una lista según la longitud del string

Solución 1
a = ["pepe", "a", "abc", "abcde"]
b= []
for i in a:
...     if len(i) % 2 == 1:
...             b.append(i)
...
print b
['a', 'abc', 'abcde']
Solución 2
a = ["pepe", "a", "abc", "abcde"]
b = [i for i in a if len(i) % 2 == 1]
print b
['a', 'abc', 'abcde']
 
# también se puede realizar duirectamente una operación al elemento al introducirlo:
a = ["pepe", "a", "abc", "abcde"]
b = [i.upper() for i in a if len(i) % 2 == 1]
print b
['A', 'ABC', 'ABCDE']

Funciones

def nombre_funcion (param1, param2=8, param3="hola"):
    if a == True:
        return b,c

None es un tipo de dato que no está definido.

Todas las funciones en Python devuelven algo. Si llamamos a una función sin return, devuelve None

Otros

lista[::2] # nos los da de 2 en 2 empezando desde 0
 
"hola"*3 # "holaholahola"

Tutoriales completos

python/syntax.txt · Last modified: 2009/09/21 18:11 by nejo