otro 5po sin hacer una conversión explícita >>> 5 + '5' Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str' >>> 5 + int('5') 10 >>> @henocdz
python3 Python 3.5.1 (default, Dec 7 2015, 21:59:10) [GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.76)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> 5 + 5 10 >>> print('Oh Python!') Oh Python! @henocdz
# Son inmutables a_string_quotes = "Python es amor" a_string_triple = '''Python es vida!''' a_list = [1, [2], 1, a_string, 3.67] # Cualquier tamaño, cualquier tipo de dato a_tuple = (5, ['z'], 89, ) # Mismas reglas que las listas, pero la tuplas con inmutables a_tuple_comma = 5, ['z'], 89, # La coma es el caracter que sepera los elementos a_set = set([1, 1, 4, 1]) # =[1,4] Colección sin datos duplicados @henocdz
llave puede ser cualquier objeto inmutable # (i.e, numeros, cadenas, tuplas) 'una_llave': 'algún valor', 4: 'otro valor', a_tuple: a_list # Las tuplas pueden ser llaves si sus elementos son inmutables } @henocdz
>>> 10 == 10 True # Evalúa si dos elementos NO son iguales >>> 10 != 5 True # Evalúa si el argumento izquierdo es menor que el derecho >>> 14 < 2 False # Viceversa >>> 14 > 2 True # >= y <= también son soportados @henocdz
o combinarlas con otros objetos # La forma simple "Me gusta {}".format('programar') # La forma simple #2 "Me {1} {0}".format('programar', 'gusta') # La manera 'compleja' "Me {verbo} {accion}".format(accion='programar', verbo='gusta') @henocdz
es, ejecuta el bloque; # si la expresión es falsa, termina el ciclo >>> somos_geniales = True >>> while somos_geniales: ... mantenerse_genial() @henocdz
termina de manera abrupta el ciclo 2. con)nue: ignora el resto del bloque y con8núa con la siguiente evaluación >>> while True: ... if estoy_cansado: ... break @henocdz
funciones o variables, en su lugar debes usar snake case, es decir: def estoEsIncorrecto(): def esto_correcto(): 1. PEP8: Guía de es/los para Python (Oficial) a. h>ps:/ /www.python.org/dev/peps/pep-0008/ 2. Google Style Guide, :eye: en como comentar b. h>p:/ /google.github.io/styleguide/pyguide.html @henocdz
o vació ('') Salida: 'Hola {NOMBRE}', si el usuario indicó algún valor, 'Hola Mundo' en caso contrario Ejemplo: Dime tu nombre: Henoc Hola Henoc! # o Dime tu nombre: Hola mundo! @henocdz
letras del abecedario por lo menos una vez Entrada: Cualquier cadena de texto Salida: Indicar si la palabra es un pagrama o no Por ejemplo: ```bash Ingresa la cadena: abcdefghijklnmporstquvwxzy Es un pagrama. Ingresa la cadena: que flojera No es un pangrama ¬¬ ``` @henocdz
Salida: Letras que incluye la cadena y cuantas veces se repite en la frase Ejemplo de salida (entrada: anita lava la 3na) a: 6 n: 2 i: 2 t: 2 v: 1 @henocdz
Todas las subcadenas con+guas de N caracteres Por ejemplo, la cadena "49142" 4ene las series de 3 dígitos: 491 914 142 O si son de 4 dígitos 4914 9142 @henocdz
>>> def funcion_con_parametros(un_parametro): ... print(un_parametro) >>> def funcion_con_valores_por_default(un_parametro, tiene_defaults=True): ... """Params with no default value must be defined first""" ... print(un_parametro, tiene_defaults) >>> def dame_el_año(): ... # Sí, podemos usar ñ en las funciones, pero por favor no lo hagan jaja ... return 2016 @henocdz
= [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] Escribe un programa que regresa una lista la cual con3ene elementos que ambas listas (a y b) 3enen. Asegúrate de que el programa funciona con listas de dis3ntos tamaños. @henocdz
aleatoria genera un número de 4 dígitos. Pídele al usuario que intente adivinar los 4 dígitos del número. Por cada dígito que el usuario adivine 8enen una VACA y por cada número que introduzca mal 8ene un TORO; ten en cuenta que el dígito debe estar en la misma posición. Por cada vez que lo intente, díle al usuario cuantas vacas y cuantos toros 5ene. El juego termina cuando el usuario adivina los 4 dígitos. Al finalizar, imprime en pantalla el historial de intentos que hizo el usuario @henocdz
An example interac8on could look like this: Bienvenido al juego de Vacas y Toros! Ingresa un número: 1234 2 cows, 2 bulls Ingresa un número: 3821 1 cow, 3 bull Así hasta que el juego termine. @henocdz
# Nombre de archivo: otro_archivo.py >>> import my_math >>> print(my_math.zum(3, 4)) 7 # O solo una definición con >>> from my_math import zum >>> print(zum(1, 2)) 2 # Una definición con alias >>> from my_math import zum as my_sum >>> print(my_zum(12, 12)) 24 @henocdz
del módulo al intérprete ($ python3), ejecutará el archivo como un archivo script, esto significa que el contenido del archivo se ejecutará tal y como está de manera inmediata. Si no queremos ese comportamiento, podemos usar la variable global __name__ para el código que queremos se ejecute como script, así: if __name__ = '__main__': print('Ejecutando en "modo" script...') La variable global __name__ con.ene el nombre del módulo, pero si el módulo es ejecutado como script, esta variable con.ene la cadena __main__ @henocdz
print('I\'m the class `B :)') super(B, self).some_method() # Basic Inheritance is from left to right class C(A, B): pass Algoritmo Super-pro para determinar la precedencia en herencia múl2ple : h4ps:/ /www.python.org/ download/releases/2.3/mro/_ @henocdz
estos métodos mágicos para sobre escribir el comportamiento de algunos operadores, por ejemplo: class Student(object): ... def __add__(self, other): if isinstance(other, self.__class__): skills = self.get_skills() + other.get_skills() belt = self.belt + other.belt return Student(belt, skills) @henocdz
applica3ons and both depends on MyPackage, but the first one requires version 1 of MyPackage and the later one requires version 2 of MyPackage. The solu)on for that is a virtual environment. In Python 3 you can do so with this command: # pyvenv command it's installed when you install Python3 $ pyvenv ENV_DIR ENV_DIR is the folder where our virtualenv will be installed. @henocdz