0% encontró este documento útil (0 votos)
206 vistas

Python - Atajos

Este documento proporciona una introducción a varios conceptos básicos de Python como comentarios, operaciones aritméticas, variables, tipos de datos, cadenas, condicionales, bucles, funciones, módulos, diccionarios y archivos. Explica conceptos clave como el uso de comentarios, operadores aritméticos, asignación de variables, tipos de datos como enteros, flotantes y cadenas, y estructuras de control como if/else, for loops y funciones.

Cargado por

Mario Moreno
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
206 vistas

Python - Atajos

Este documento proporciona una introducción a varios conceptos básicos de Python como comentarios, operaciones aritméticas, variables, tipos de datos, cadenas, condicionales, bucles, funciones, módulos, diccionarios y archivos. Explica conceptos clave como el uso de comentarios, operadores aritméticos, asignación de variables, tipos de datos como enteros, flotantes y cadenas, y estructuras de control como if/else, for loops y funciones.

Cargado por

Mario Moreno
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 93

ATAJOS

Contenido
Comments - Comentarios 6

Operaciones aritméticas 7

Operador más-igual += 8

VARIABLES 9

MODULE - Operador modulo % 10

INT - Numeros Enteros 11

FLOAT- Números de punto flotante 11

STRING - Cadena de caracteres 12

Concatenación de cadenas 12

Errores 13

ZeroDivisionError - Error de división cero 13

Syntax Error - Error de sintaxis 13

NameError - Error de nombre 15

Función print() 16

Condicionales 17

Declaración elif 17

Operador or 18

Operador igual== 19

Operador no igual!= 20

Operadores de comparación 21

Declaración if 22
Declaración else 23

Operador and 24

Valores booleanos 24

Operador not 26

Listas 27

Lista - anidado de listas 28

Lista - tipos de datos 29

Lista - método .append() 30

Lista - zero-indexing 30

Lista - Índices de lista 31

Lista - Índices de lista negativa 32

Lista - Modificación de listas 2D 33

Lista - acceso a listas 2D 33

Lista - método .remove() 34

Lista - Método .count() 34

Lista - funcion len() 35

Lista - Método.sort() 35

Listas - Segmentación de listas 36

Lista - Función sorted() 37

Lista - método .insert() 37

Lista - Método.pop() 38

BUCLES 39

break - palabra clave 39

bucles - Listas por comprensión 40

For - bucle 41

continue - palabra clave 42

range - función integrada. 43


Bucle infinito 44

while - bucle 45

Bucles anidados 46

Funciones: 47

Parámetros de función 47

Parámetros Múltiples 48

definición de Funciones 49

Sangría de funciones 50

Funciones de llamada 51

Argumentos de funciones 52

Argumentos de palabra clave de función 53

Devolver valores múltiples 54

El alcance de las variables 55

Valor devuelto de la función 56

Variables globales 57

Parámetros como variables locales 58

Cadena de caracteres (Strings) 59

Cadenas de caracteres 59

Caracteres de escape 59

la sintaxis: in 59

Indexación y corte de cadenas 60

Iterar una cadena 60

Función incorporada: len() 61

Concatenación de cadenas 61

Cadenas inmutables 62

IndexError 62

Método: .format() 62
Método: .lower() 63

Método: .strip() 63

Método: .title() 64

Método: .split() 64

Método: .find() 64

Método: .replace() 65

Método: .upper() 65

Método: .join() 65

Módulos: 66

Fecha y hora en Python 66

Alias ​con la palabra clave 'as' 67

Importar módulos de Python 67

random.randint()y random.choice() 68

Importación de módulos 68

Diccionarios (Dictionaries): 69

Acceso y escritura de datos en un diccionario de Python 69

Sintaxis del diccionario Python 70

Fusionando diccionarios con el método .update() en Python 71

Tipos de valores de diccionario 72

Diccionarios de Python 73

Métodos de valor-clave del diccionario 74

método get() para el diccionario 75

El método .pop() para diccionarios en Python 76

Archivos 77

Objeto de archivo Python 77

Método de línea de lectura de Python 78

Análisis de archivos JSON al diccionario 79


Python anexar al archivo 80

Python escribir en archivo 81

Método de líneas de lectura de Python 82

Clase csv.DictWriter 83

Método de lectura de Python 84


Comments - Comentarios
Un comentario es un fragmento de texto dentro de un programa que no se
ejecuta. Se puede utilizar para proporcionar información adicional que ayude
a comprender el código.

El carácter # Se utiliza para iniciar un comentario y continúa hasta el final de la


línea.
# Comment on a single line

user = "JDoe" # Comment after code


Operaciones aritméticas

Python admite diferentes tipos de operaciones aritméticas que se pueden


realizar con números (literalmente), variables o alguna combinación. Los
principales operadores aritméticos son:

● + para la adición
● - para la resta
● * para la multiplicación
● / para división
● % para módulo (devuelve el resto de una división)
● ** para potenciación

# Arithmetic operations

result = 10 + 30


result = 40 - 10
result = 50 * 5
result = 16 / 4
result = 25 % 2
result = 5 ** 3
Operador más-igual +=

El operador más-igual += proporciona una forma conveniente de agregar un


valor a una variable existente y asignar el nuevo valor a la misma variable. En
el caso de que la variable y el valor sean cadenas, este operador realiza la
concatenación de cadenas en lugar de la suma.

La operación se realiza en el lugar, lo que significa que cualquier otra variable


que apunte a la variable que se está actualizando también se actualizará.

# Plus-Equal Operator

counter = 0
counter += 10

# This is equivalent to

counter = 0
counter = counter + 10

# The operator will also perform string concatenation

message = "Part 1 of message "


message += "Part 2 of message"
VARIABLES

Una variable se utiliza para almacenar datos que serán utilizados por el
programa. Estos datos pueden ser un número, una cadena, un booleano, una
lista o algún otro tipo de datos. Cada variable tiene un nombre que puede
consistir en letras, números y el carácter de subrayado _.

El signo igual = se utiliza para asignar un valor a una variable. Después de


realizar la asignación inicial, el valor de una variable se puede actualizar a
nuevos valores según sea necesario.

# These are all valid variable names and assignment

user_name = "@sonnynomnom"
user_id = 100
verified = False

# A variable's value can be changed after assignment

points = 100
points = 120
MODULE - Operador modulo %

Un cálculo de módulo devuelve el resto de una división entre el primer y el


segundo número. Por ejemplo:

● El resultado de la expresión 4 % 2 daría como resultado el valor 0,


porque 4 es divisible por 2 sin dejar resto.
● El resultado de la expresión 7 % 3 devolvería 1, porque 7 no es divisible
por 3, dejando un resto de 1.

# Modulo operations

zero = 8 % 4

nonzero = 12 % 5


INT - Numeros Enteros
Un número entero es un número que se puede escribir sin una parte
fraccionaria (sin decimal). Un número entero puede ser un número positivo,
un número negativo o el número 0 siempre que no tenga una parte decimal.

El número 0 representa un valor entero, pero el mismo número


escrito 0.0representaría un número de coma flotante.

# Example integer numbers

chairs = 4
tables = 1
broken_chairs = -2
sofas = 0

# Non-integer numbers

lights = 2.5
left_overs = 0.0

FLOAT- Números de punto flotante

A las variables de Python se les pueden asignar diferentes tipos de datos. Un


tipo de dato admitido es el número de coma flotante. Un número de coma
flotante es un valor que contiene una parte decimal. Se puede usar para
representar números que tienen cantidades fraccionarias. Por ejemplo, a =
3/5 no se puede representar como un número entero, por lo que a la
variable a se le asigna un valor de coma flotante de 0.6.

# Floating point numbers

pi = 3.14159
meal_cost = 12.99
tip_percent = 0.20
STRING - Cadena de caracteres

Una cadena es una secuencia de caracteres (letras, números, espacios en


blanco o puntuación) entre comillas. Se puede encerrar usando las comillas
dobles "o las comillas simples '.

Si una cadena debe dividirse en varias líneas, \ se puede usar el carácter de


barra invertida para indicar que la cadena continúa en la siguiente línea.
user = "User Full Name"
game = 'Monopoly'

longer = "This string is broken up \


over multiple lines"

Concatenación de cadenas

Python admite la unión (concatenación) de cadenas mediante el +


operador. El operador + también se usa para operaciones de suma
matemática. Si los parámetros pasados ​al operador + son cadenas, se
realizará la concatenación. Si el parámetro pasado al operador + tiene
diferentes tipos, Python informará una condición de error. Se pueden unir
múltiples variables o cadenas literales usando el + operador.
# String concatenation

first = "Hello "


second = "World"

result = first + second

long_result = first + second + "!"


Errores

El intérprete de Python informará los errores presentes en su código. Para la


mayoría de los casos de error, el intérprete mostrará la línea de código donde
se detectó el error y colocará un carácter de intercalación ^debajo de la parte
del código donde se detectó el error.

if False ISNOTEQUAL True:


                  ^
SyntaxError: invalid syntax

ZeroDivisionError - Error de división cero

El intérprete de Python notifica un: ZeroDivisionError cuando detecta que se


está realizando una operación de división y el denominador (número inferior)
es 0. En matemáticas, dividir un número por cero no tiene un valor definido,
por lo que Python lo trata como una condición de error y informe un
ZeroDivisionError y muestre la línea de código donde ocurrió la división. Esto
también puede suceder si se usa una variable como denominador y su valor
se ha establecido o cambiado a 0.

numerator = 100
denominator = 0
bad_results = numerator / denominator

ZeroDivisionError: division by zero

Syntax Error - Error de sintaxis

El intérprete de Python informa de un SyntaxError cuando alguna parte del


código es incorrecta. Esto puede incluir palabras clave mal escritas,
corchetes o paréntesis faltantes o demasiados, operadores incorrectos,
comillas faltantes o demasiados u otras condiciones.
age = 7 + 5 = 4

File "<stdin>", line 1


SyntaxError: can't assign to operator
NameError - Error de nombre

El intérprete de Python informa de un NameError cuando detecta una


variable desconocida. Esto puede ocurrir cuando se usa una variable antes de
que se le haya asignado un valor o si el nombre de una variable se escribe de
forma diferente al punto en el que se definió. El intérprete de Python
mostrará la línea de código donde se detectó el NameError e indicará qué
nombre encontró que no estaba definido.
misspelled_variable_name

NameError: name 'misspelled_variable_name' is not defined


Función print()

La función print() se utiliza para enviar texto, números u otra información


imprimible a la consola.

Toma uno o más argumentos y enviará cada uno de ellos a la consola


separados por un espacio. Si no se proporcionan argumentos, la
función print() generará una línea en blanco.

Ejemplo:
Condicionales

Declaración elif

La declaración de Python elif permite realizar comprobaciones continuas


después de una declaración if inicial. Una declaración elif difiere de la
declaración else porque se proporciona otra expresión para verificar, al
igual que con la declaración if inicial.

Si la expresión es True se ejecuta el código sangrado/indentado que sigue a


elif. Si la expresión se evalúa como False, el código puede continuar con
una instrucción else opcional. Se pueden usar varias declaraciones elif
después de la primer if, para realizar una serie de comprobaciones. Una
vez que una expresión elif se evalúa como True, no se ejecutan más
declaraciones elif.

# elif Statement

pet_type = "fish"

if pet_type == "dog":
  print("You have a dog.")
elif pet_type == "cat":
  print("You have a cat.")
elif pet_type == "fish":
  # this is performed
  print("You have a fish")
else:
  print("Not sure!")
Operador or

El operador de Python or combina dos expresiones booleanas y


evalúa True si al menos una de las expresiones devuelve True. De lo
contrario, si ambas expresiones son False, la expresión completa se evalúa
como False.

True or True      # Evaluates to True


True or False     # Evaluates to True
False or False    # Evaluates to False
1 < 2 or 3 < 1    # Evaluates to True
3 < 1 or 1 > 6    # Evaluates to False
1 == 1 or 1 < 2   # Evaluates to True
Operador igual==

El operador igual ==, se usa para comparar dos valores, variables o


expresiones para determinar si son iguales.

Si los valores que se comparan son iguales, el operador devuelve True, de lo


contrario, devuelve False.

El operador tiene en cuenta el tipo de datos al realizar la comparación, por lo


que un valor de cadena de no"2" se considera igual que un valor numérico
de .2

# Equal operator

if 'Yes' == 'Yes':
  # evaluates to True
  print('They are equal')

if (2 > 1) == (5 < 10):


  # evaluates to True
  print('Both expressions give the same result')

c = '2'
d = 2

if c == d:
  print('They are equal')
else:
  print('They are not equal')
Operador no igual!=

El operador Python no es igual !=, se usa para comparar dos valores,


variables o expresiones para determinar si NO son iguales. Si NO son iguales,
el operador devuelve True. Si son iguales, entonces devuelve False.

El operador tiene en cuenta el tipo de dato al realizar la comparación, por lo


que un valor de 10 NO sería igual al valor de la cadena "10" y el operador
devolverá True. Si se utilizan expresiones, se evalúan a un valor de True
o False antes de que el operador realice la comparación.

# Not Equals Operator

if "Yes" != "No":
  # evaluates to True
  print("They are NOT equal")

val1 = 10
val2 = 20

if val1 != val2:
  print("They are NOT equal")

if (10 > 1) != (10 > 1000):


  # True != False
  print("They are NOT equal")
Operadores de comparación

En Python, los operadores relacionales comparan dos valores o


expresiones. Los más comunes son:

● < menos que

● > más grande que

● <= Menos que o igual a

● >= mayor o igual también

Si la relación es correcta, la expresión completa se evaluará como True. Si


no, la expresión se evalúa como False.

a = 2
b = 3
a < b  # evaluates to True
a > b  # evaluates to False
a >= b # evaluates to False
a <= b # evaluates to True
a <= a # evaluates to True
Declaración if

La declaración de Python se if utiliza para determinar la ejecución del código


en función de la evaluación de una expresión booleana.

● Si la expresión if de la instrucción se evalúa como True, se ejecuta el


código sangrado que sigue a la instrucción.

● Si la expresión se evalúa como entonces False, el código


sangrado/indentado que sigue a la declaración if se omite y el
programa ejecuta la siguiente línea de código que está
sangrada/indentada al mismo nivel que la declaración if.

# if Statement

test_value = 100

if test_value > 1:
  # Expression evaluates to True
  print("This code is executed!")

if test_value > 1000:


  # Expression evaluates to False
  print("This code is NOT executed!")

print("Program continues at this point.")


Declaración else

La declaración de Python else proporciona un código alternativo para


ejecutar si la expresión en una declaración if se evalúa como False.

El código sangrado para la instrucción if se ejecuta si la expresión se evalúa


como True. El código sangrado que sigue inmediatamente a else se ejecuta
solo si la expresión se evalúa como False. Para marcar el final del
bloque else, el código debe estar sin sangría al mismo nivel que la línea
inicial if.

# else Statement

test_value = 50

if test_value < 1:
  print("Value is < 1")
else:
  print("Value is >= 1")

test_string = "VALID"

if test_string == "NOT_VALID":
  print("String equals NOT_VALID")
else:
  print("String equals something else!")
Operador and

El operador de Python and realiza una comparación booleana entre dos


valores, variables o expresiones booleanos. Si ambos lados del operador
evalúan a True entonces el and operador regresa True. Si cualquiera de los
lados (o ambos lados) se evalúa como False, entonces el and operador
devuelve False. Un valor no booleano (o una variable que almacena un
valor) siempre se evaluará True cuando se use con el and operador.

True and True     # Evaluates to True


True and False    # Evaluates to False
False and False   # Evaluates to False
1 == 1 and 1 < 2  # Evaluates to True
1 < 2 and 3 < 1   # Evaluates to False
"Yes" and 100     # Evaluates to True

Valores booleanos

Los booleanos son un tipo de datos en Python, al igual que los enteros, los
flotantes y las cadenas. Sin embargo, los valores booleanos solo tienen dos
valores:

● True

● False

En concreto, estos dos valores son del bool tipo. Dado que los valores
booleanos son un tipo de datos, crear una variable que contenga un valor
booleano es lo mismo que con otros tipos de datos.

is_true = True
is_false = False

print(type(is_true))
# will output: <class 'bool'>
Operador not

El operador booleano de Python not se usa en una expresión booleana para


evaluar la expresión en su valor inverso. Si la expresión original fuera True,
agregar el operador not haría que la expresión fuera False, y viceversa.

not True     # Evaluates to False


not False    # Evaluates to True
1 > 2        # Evaluates to False
not 1 > 2    # Evaluates to True
1 == 1       # Evaluates to True
not 1 == 1   # Evaluates to False
Listas

En Python, las listas son colecciones ordenadas de elementos que permiten un


uso sencillo de un conjunto de datos.

Los valores de la lista se colocan entre corchetes [ ], separados por comas. Es


una buena práctica poner un espacio entre la coma y el siguiente valor. No es
necesario que los valores de una lista sean únicos (se puede repetir el mismo
valor).

Las listas vacías no contienen valores entre corchetes.


Lista - anidado de listas

En Python, las listas se pueden anidar entre sí usando el símbolo más +. Como
se muestra en el bloque de código, esto dará como resultado una nueva lista
que contiene los mismos elementos en el mismo orden con los elementos de la
primera lista en primer lugar.

Nota: Esto no funcionará para agregar un elemento a la vez ( el método


método que se usa en ese caso es .append()). Si se quiere agregar un único
valor a la lista primero se crea una nueva lista con un solo valor y luego se usa
el símbolo + para agregar la lista.
Lista - tipos de datos

En Python, las listas son un tipo de datos versátil que puede contener múltiples
tipos de datos diferentes dentro de los mismos corchetes. Los posibles tipos de
datos dentro de una lista incluyen números, cadenas, otros objetos e incluso
otras listas.
Lista - método .append()

En Python, puede agregar valores al final de una lista usando el método


.append(). Esto colocará el objeto pasado como un nuevo elemento al final de
la lista. Imprimir la lista después mostrará visualmente el valor adjunto. Este
método .append() no debe confundirse con devolver una lista completamente
nueva con el objeto pasado.

Lista - zero-indexing
En Python, el índice de la lista comienza en cero y termina en la longitud de la
lista menos uno. Por ejemplo, en esta lista, 'Andy' se encuentra en el índice 2.
Lista - Índices de lista

Los elementos de la lista de Python están ordenados por índice , un número


que se refiere a su ubicación en la lista. Los índices de lista comienzan en 0 y se
incrementan en uno.

Para acceder a un elemento de lista por índice, se utiliza la notación de


corchetes: list[index].
Lista - Índices de lista negativa

Los índices negativos para listas en Python se pueden usar para hacer
referencia a elementos en relación con el final de una lista. Esto se puede usar
para acceder a elementos de una sola lista o como parte de la definición de un
rango de lista. Por ejemplo:

● Para seleccionar el último elemento, my_list[-1].


● Para seleccionar los últimos tres elementos, my_list[-3:].
● Para seleccionar todo excepto los dos últimos elementos, my_list[:-2].
Lista - Modificación de listas 2D
Para modificar elementos en una lista 2D (comúnmente denominada matriz),
se debe proporcionar un índice para la sublista y el índice para el elemento de
la sublista. El formato para esto es list[sublist_index][element_in_sublist_index]
= new_value.

Lista - acceso a listas 2D


Para acceder a los elementos de una lista 2D, es necesario proporcionar un
índice para la sublista y el índice para el elemento de la sublista. El formato
para esto es list[sublist_index][element_in_sublist_index].
Lista - método .remove()
El método .remove() en Python se usa para eliminar un elemento de una lista
pasando el valor del elemento que se eliminará como argumento. En el caso de
que dos o más elementos de la lista tengan el mismo valor, se elimina la
primera aparición del elemento.

Lista - Método .count()


El método .count() de Python busca en una lista cualquier término de
búsqueda que reciba como argumento y luego devuelve el número de entradas
coincidentes encontradas.
Lista - funcion len()
La función de Python len() se puede usar para determinar la cantidad de
elementos que se encuentran en la lista que se acepta como argumento.

Lista - Método.sort()
El método .sort() de Python ordenará el contenido de cualquier lista a la que se
llame. Las listas numéricas se clasifican en orden ascendente y las listas de
cadenas se clasifican en orden alfabético. Luego de modificar la lista original
este método no retorna ningún valor.
Listas - Segmentación de listas
Se puede seleccionar una porción o una sublista de elementos listados en una
lista de Python usando los índices de inicio y final de la posición de lista que
interesa y estos índices separados por dos puntos en vez de una coma.

El patrón de sintaxis es myList[START_NUMBER:END_NUMBER]. El segmento


incluirá el START_NUMBER índice, y todo hasta excluir el END_NUMBER
elemento.

Al dividir una lista, se devuelve una nueva lista, por lo que si la división se
guarda y luego se modifica, la lista original sigue siendo la misma.
Lista - Función sorted()
La función de Python sorted() acepta una lista como argumento y devolverá
una nueva lista ordenada que contiene los mismos elementos que la original.
Las listas numéricas se clasifican en orden ascendente y las listas de cadenas se
clasifican en orden alfabético. No modifica la lista original sin ordenar.

Lista - método .insert()


El método .insert() nos permite agregar un elemento a un índice específico en
una lista.

Toma dos entradas:

● El índice en el que desea insertar.


● El elemento que desea insertar en el índice especificado.
Lista - Método.pop()
El método .pop() nos permite eliminar un elemento de una lista y al mismo
tiempo devolverlo. Acepta una entrada opcional que es el índice del elemento
a eliminar. Si no se proporciona un índice, se eliminará y devolverá el último
elemento de la lista.
BUCLES
break - palabra clave
En un bucle, la palabra clave break escapa del bucle, independientemente
del número de iteración. Una vez que break se ejecuta, el programa
continuará ejecutándose después del ciclo.

En este ejemplo, la salida sería:

● 0
● 254
● 2
● Negative number detected!

numbers = [0, 254, 2, -1, 3]

for num in numbers:

if (num < 0):

print("Negative number detected!")

break

print(num)

# 0

# 254

# 2

# Negative number detected!


bucles - Listas por comprensión
Las listas por comprensión de Python proporcionan una forma concisa de
crear listas. Consiste en corchetes que contienen una expresión seguida de
una cláusula for, luego cero o más cláusulas for o if: [EXPRESSION for ITEM
in LIST <if CONDITIONAL>].

Las expresiones pueden ser cualquier cosa: cualquier tipo de objeto puede
entrar en una lista.

Una lista por comprensión siempre devuelve una lista.


# List comprehension for the squares of all even numbers between 0 and 9

result = [x**2 for x in range(10) if x % 2 == 0]

print(result)

# [0, 4, 16, 36, 64]


For - bucle

Se puede usar un bucle for de Python para iterar sobre una lista de
elementos y realizar un conjunto de acciones en cada elemento. La sintaxis
de un bucle for consiste en asignar un valor temporal a una variable en
cada iteración sucesiva.

Al escribir un bucle for, recuerde sangrar(indentar) correctamente cada


acción, de lo contrario, se producirá un error IndentationError.
for <temporary variable> in <list variable>:

<action statement>

<action statement>

#each num in nums will be printed below

nums = [1,2,3,4,5]

for num in nums:

print(num)
continue - palabra clave

En Python, la palabra clave continue se usa dentro de un ciclo para omitir el


código restante dentro del bloque de código del ciclo y comenzar la
siguiente iteración del ciclo.
big_number_list = [1, 2, -1, 4, -5, 5, 2, -9]

# Print only positive numbers:

for i in big_number_list:

if i < 0:

continue

print(i)
range - función integrada.

En Python, se puede usar un bucle for para realizar una acción un número
específico de veces seguidas.

La función range() se puede usar para crear una lista que se puede usar
para especificar el número de iteraciones en un bucle for.
# Print the numbers 0, 1, 2:

for i in range(3):

print(i)

# Print "WARNING" 3 times:

for i in range(3):

print("WARNING")
Bucle infinito

Un bucle infinito es un bucle que nunca termina. Los bucles infinitos se


producen cuando las condiciones del bucle impiden que termine. Esto
podría deberse a un error tipográfico en la declaración condicional dentro
del bucle o una lógica incorrecta. Para interrumpir un programa de Python
que se está ejecutando para siempre, presione las teclas Ctrl y C juntas en
su teclado.
while - bucle

En Python, un bucle while ejecutará repetidamente un bloque de código


siempre que una condición se evalúe como True.

La condición de un ciclo while siempre se verifica primero antes de que se


ejecute el bloque de código. Si la condición no se cumple inicialmente, el
bloque de código nunca se ejecutará.

# This loop will only run 1 time

hungry = True

while hungry:

print("Time to eat!")

hungry = False

# This loop will run 5 times

i = 1

while i < 6:

print(i)

i = i + 1
Bucles anidados

En Python, los bucles se pueden anidar dentro de otros bucles. Los bucles
anidados se pueden usar para acceder a elementos de listas que están dentro
de otras listas. El elemento seleccionado del ciclo externo se puede usar como
la lista para que el ciclo interno itere.

groups = [["Jobs", "Gates"], ["Newton", "Euclid"], ["Einstein",


"Feynman"]]

# This outer loop will iterate over each list in the groups list

for group in groups:

# This inner loop will go through each name in each list

for name in group:

print(name)
Funciones:

Parámetros de función
A veces, las funciones requieren una entrada para proporcionar datos para su
código. Esta entrada se define mediante parámetros .

Los parámetros son variables que se definen en la definición de la función. Se


les asignan los valores que se pasan como argumentos cuando se llama a la
función, en otra parte del código.

Por ejemplo, la definición de función define parámetros para un personaje, un


escenario y una habilidad, que se utilizan como entradas para escribir la
primera oración de un libro.
Parámetros Múltiples

Las funciones de Python pueden tener múltiples parámetros . Así como no irías
a la escuela sin una mochila y un estuche para lápices, las funciones también
pueden necesitar más de una entrada para llevar a cabo sus operaciones.

Para definir una función con varios parámetros, los nombres de los parámetros
se colocan uno tras otro, separados por comas, dentro de los paréntesis de la
definición de la función.
definición de Funciones

Algunas tareas deben realizarse varias veces dentro de un programa. En lugar


de reescribir el mismo código en varios lugares, se puede definir una función
usando la palabra clave def. Las definiciones de función pueden incluir
parámetros, proporcionando entrada de datos a la función.

Las funciones pueden devolver un valor usando la palabra clave return seguida
del valor a devolver
Sangría de funciones

Python usa sangría para identificar bloques de código. El código dentro del
mismo bloque debe estar sangrado al mismo nivel. Una función de Python es
un tipo de bloque de código. Todo el código bajo una declaración de función
debe tener sangría para identificarlo como parte de la función. Puede haber
una sangría adicional dentro de una función para manejar otras declaraciones,
como for y if siempre que las líneas no tengan una sangría menor que la
primera línea del código de la función.
Funciones de llamada

Python usa una sintaxis simple para usar, invocar o llamar a una función
preexistente. Se puede llamar a una función escribiendo el nombre de la
misma, seguido de paréntesis.

Por ejemplo, el código proporcionado llamaría al método doHomework().


Argumentos de funciones

Los parámetros en python son variables, marcadores de posición para los


valores reales que necesita la función. Cuando se llama a la función , estos
valores se pasan como argumentos .

Por ejemplo, los argumentos pasados ​a la función .sales() son "El mercado de
agricultores", "pasta de dientes" y "$1", que corresponden a los parámetros
grocery_store, item_on_saley cost
Argumentos de palabra clave de función

Las funciones de Python se pueden definir con argumentos con nombre


que pueden tener valores predeterminados proporcionados. Cuando los
argumentos de función se pasan utilizando sus nombres, se denominan
argumentos de palabra clave. El uso de argumentos de palabras clave al
llamar a una función permite que los argumentos se pasen en cualquier
orden, no solo en el orden en que fueron definidos en la función. Si la
función se invoca sin un valor para un argumento específico, se utilizará
el valor predeterminado.
Devolver valores múltiples
Las funciones de Python pueden devolver múltiples valores usando una
declaración return. Todos los valores que deben devolverse se enumeran
después de la palabra clave return y están separados por comas.

En el ejemplo, la función square_point() devuelve x_squared, y_squared y


z_squared.
El alcance de las variables
En Python, una variable definida dentro de una función se denomina variable
local. No se puede usar fuera del alcance de la función, e intentar hacerlo sin
definir la variable fuera de la función provocará un error.

En el ejemplo, la variable a se define tanto dentro como fuera de la función.


Cuando f1() se implementa la función, a se imprime como 2 porque está
definida localmente para que así sea. Sin embargo, cuando se imprime a fuera
de la función, a se imprime como 5 porque se implementa fuera del alcance de
la función.
Valor devuelto de la función
Una palabra clave return se usa para devolver un valor de una función de
Python. El valor devuelto por una función se puede asignar a una variable que
luego se puede usar en el programa.

En el ejemplo, la función devuelve una cadena check_leap_year, que indica si el


parámetro pasado es un año bisiesto o no.
Variables globales
Una variable que se define fuera de una función se denomina variable global.
Se puede acceder dentro del cuerpo de una función.

En el ejemplo, la variable a es una variable global porque se define fuera de la


función prints_a. Por lo tanto, es accesible a prints_a, que imprimirá el valor de
a.
Parámetros como variables locales
Los parámetros de función se comportan de manera idéntica a las variables
locales de una función. Se inicializan con los valores pasados ​a la función
cuando se llamó.

Al igual que las variables locales, no se puede hacer referencia a los parámetros
desde fuera del alcance de la función.

En el ejemplo, el parámetro value se define como parte de la definición de


my_function y, por lo tanto, solo se puede acceder a él dentro de my_function.
Intentar imprimir el contenido de value desde fuera de la función provoca un
error.
Cadena de caracteres (Strings)

Cadenas de caracteres
En informática, las secuencias de caracteres se conocen como cadenas . Las
cadenas pueden tener cualquier longitud y pueden incluir cualquier carácter,
como letras, números, símbolos y espacios en blanco (espacios, tabulaciones,
líneas nuevas).

Caracteres de escape
Las barras invertidas ( \) se utilizan para escapar de los caracteres en una
cadena de Python.

Por ejemplo, para imprimir una cadena con comillas, se puede usar el
fragmento de código proporcionado.
txt = "She said \"Never let go\"."

print(txt) # She said "Never let go".

la sintaxis: in
La sintaxis in se utiliza para determinar si existe una letra o una subcadena en
una cadena. Devuelve True si se encuentra una coincidencia, de lo contrario se
devuelve False.

game = "Popular Nintendo Game: Mario Kart"

print("l" in game) # Prints: True

print("x" in game) # Prints: False


Indexación y corte de cadenas
Las cadenas de Python se pueden indexar usando la misma notación que las
listas, ya que las cadenas son listas de caracteres. Se puede acceder a un solo
carácter con la notación de corchetes ( [index]), o se puede acceder a una
subcadena mediante el corte ( [start:end]).

La indexación con números negativos cuenta desde el final de la cadena.

str = 'yellow'

str[1] # => 'e'

str[-1] # => 'w'

str[4:6] # => 'ow'

str[:4] # => 'yell'

str[-3:] # => 'low'

Iterar una cadena


Para iterar a través de una cadena en Python, se usa la notación “for…in”.
str = "hello"

for c in str:

print(c)

# h

# e

# l

# l

# o
Función incorporada: len()
En Python, la len()función integrada se puede usar para determinar la longitud
de un objeto. Se puede utilizar para calcular la longitud de cadenas, listas,
conjuntos y otros objetos contables.

length = len("Hello")

print(length)

# Output: 5

colors = ['red', 'yellow', 'green']

print(len(colors))

# Output: 3

Concatenación de cadenas
Para combinar el contenido de dos cadenas en una sola cadena, Python
proporciona el operador +. Este proceso de unir cadenas se llama
concatenación.
x = 'One fish, '

y = 'two fish.'

z = x + y

print(z)

# Output: One fish, two fish.


Cadenas inmutables
Las cadenas son inmutables en Python. Esto significa que una vez que se ha
definido una cadena, no se puede cambiar.

No hay métodos de mutación para cadenas. Esto es diferente a los tipos de


datos como las listas, que se pueden modificar una vez que se crean.

IndexError
Al indexar una cadena en Python, si intenta acceder a un índice que no existe,
se genera un IndexError. Por ejemplo, el siguiente código crearía un IndexError:
fruit = "Berry"

indx = fruit[6]

Método: .format()
El método de cadena de Python .format() reemplaza los marcadores de
posición de llaves vacías ( {}) en la cadena con sus argumentos.

Si se especifican palabras clave dentro de los marcadores de posición, se


reemplazan con los argumentos con nombre correspondientes al método.

msg1 = 'Fred scored {} out of {} points.'

msg1.format(3, 10)

# => 'Fred scored 3 out of 10 points.'

msg2 = 'Fred {verb} a {adjective} {noun}.'

msg2.format(adjective='fluffy', verb='tickled', noun='hamster')

# => 'Fred tickled a fluffy hamster.'


Método: .lower()
El método de cadena .lower() devuelve una cadena con todos los caracteres en
mayúsculas convertidos a minúsculas.

greeting = "Welcome To Chili's"

print(greeting.lower())

# Prints: welcome to chili's

Método: .strip()
El método de cadena .strip() se puede utilizar para eliminar caracteres del
principio y el final de una cadena.

Se puede pasar un argumento de cadena al método, especificando el conjunto


de caracteres que se eliminarán. Sin argumentos para el método, se eliminan
los espacios en blanco.

text1 = ' apples and oranges '

text1.strip() # => 'apples and oranges'

text2 = '...+...lemons and limes...-...'

# Here we strip just the "." characters

text2.strip('.') # => '+...lemons and limes...-'

# Here we strip both "." and "+" characters

text2.strip('.+') # => 'lemons and limes...-'

# Here we strip ".", "+", and "-" characters

text2.strip('.+-') # => 'lemons and limes'


Método: .title()
El método de cadena .title()devuelve la cadena en mayúsculas y minúsculas.
Con el caso del título, el primer carácter de cada palabra está en mayúscula,
mientras que el resto de los caracteres están en minúscula.

my_var = "dark knight"

print(my_var.title())

# Prints: Dark Knight

Método: .split()
El método de cadena .split() divide una cadena en una lista de elementos:

● Si no se pasa ningún argumento, el comportamiento predeterminado es


dividir en espacios en blanco.
● Si se pasa un argumento al método, este valor se usa como delimitador
en el que dividir la cadena.
text = "Silicon Valley"

print(text.split())

# Prints: ['Silicon', 'Valley']

print(text.split('i'))

# Prints: ['S', 'l', 'con Valley']

Método: .find()
El método de cadena de Python .find() devuelve el índice de la primera
aparición de la cadena pasada como argumento. Vuelve -1si no se encuentra
ninguna ocurrencia.
mountain_name = "Mount Kilimanjaro"

print(mountain_name.find("o")) # Prints 1 in the console.


Método: .replace()
El método .replace() se usa para reemplazar la ocurrencia del primer
argumento con el segundo argumento dentro de la cadena.

El primer argumento es la subcadena anterior que se reemplazará, y el segundo


argumento es la nueva subcadena que reemplazará cada aparición de la
primera dentro de la cadena.
fruit = "Strawberry"

print(fruit.replace('r', 'R'))

# StRawbeRRy

Método: .upper()
El método de cadena .upper() devuelve la cadena con todos los caracteres en
minúscula convertidos a mayúsculas.

dinosaur = "T-Rex"

print(dinosaur.upper())

# Prints: T-REX

Método: .join()
El método de cadena .join() concatena una lista de cadenas para crear una
nueva cadena unida con el delimitador deseado.

El método .join() se ejecuta en el delimitador y la matriz de cadenas que se


concatenan juntas se pasa como argumento.

x = "-".join(["Moegui", "is", "awesome"])

print(x)

# Prints: Moegui-is-awesome
Módulos:
Fecha y hora en Python
Python proporciona un módulo nombrado datetime para tratar con fechas y
horas.

Le permite configurar date, time o ambos date y time, también usar las
funciones respectivamente date() .time() datetime(), después de importar el
módulo datetime.
import datetime

feb_16_2019 = datetime.date(year=2019, month=2, day=16)

feb_16_2019 = datetime.date(2019, 2, 16)

print(feb_16_2019) #2019-02-16

time_13_48min_5sec = datetime.time(hour=13, minute=48, second=5)

time_13_48min_5sec = datetime.time(13, 48, 5)

print(time_13_48min_5sec) #13:48:05

timestamp= datetime.datetime(year=2019, month=2, day=16, hour=13,


minute=48, second=5)

timestamp = datetime.datetime(2019, 2, 16, 13, 48, 5)

print (timestamp) #2019-01-02 13:48:05


Alias ​con la palabra clave 'as'
En Python, la palabra clave as se puede usar para dar un nombre alternativo
como alias para un módulo o función de Python.
# Aliasing matplotlib.pyplot as plt

from matplotlib import pyplot as plt

plt.plot(x, y)

# Aliasing calendar as c

import calendar as c

print(c.month_name[1])

Importar módulos de Python


La declaración de importación de Python se puede usar para importar módulos
de Python desde otros archivos.

Los módulos se pueden importar de tres maneras diferentes: import module,


from module import functions ó from module import *. from module import
*se desaconseja, ya que puede conducir a un espacio de nombres local
desordenado y puede hacer que el espacio de nombres no sea claro.
# Three different ways to import modules:

# First way

import module

module.function()

# Second way

from module import function

function()

# Third way

from module import *

function()
random.randint()y random.choice()
En Python, el módulo random ofrece métodos para simular un
comportamiento no determinista al seleccionar un número aleatorio de un
rango y elegir un elemento aleatorio de una lista.

El método randint() proporciona una selección aleatoria uniforme de un rango


de números enteros. El método choice() proporciona una selección uniforme
de un elemento aleatorio de una secuencia.
# Returns a random integer N in a given range, such that start <= N <= end

# random.randint(start, end)

r1 = random.randint(0, 10)

print(r1) # Random integer where 0 <= r1 <= 10

# Prints a random element from a sequence

seq = ["a", "b", "c", "d", "e"]

r2 = random.choice(seq)

print(r2) # Random element in the sequence

Importación de módulos
En Python, puede importar y usar el contenido de otro archivo usando import
filename, siempre que esté en la misma carpeta que el archivo actual que está
escribiendo.

# file1 content

# def f1_function():

# return "Hello World"

# file2

import file1

# Now we can use f1_function, because we imported file1

f1_function()
Diccionarios (Dictionaries):

Acceso y escritura de datos en un diccionario de Python

Se puede acceder a los valores en un diccionario de Python colocando la clave


entre corchetes al lado del diccionario. Los valores se pueden escribir
colocando la clave entre corchetes al lado del diccionario y usando el operador
de asignación ( =). Si la clave ya existe, se sobrescribirá el valor anterior.
Intentar acceder a un valor con una clave que no existe provocará un archivo
KeyError.

Para ilustrar esta tarjeta de revisión, la segunda línea del bloque de código de
ejemplo muestra la forma de acceder al valor usando la tecla "song". La tercera
línea del bloque de código sobrescribe el valor que corresponde a la clave
"song".

my_dictionary = {"song": "Estranged", "artist":


"Guns N' Roses"}
print(my_dictionary["song"])
my_dictionary["song"] = "Paradise City"
Sintaxis del diccionario Python

La sintaxis de un diccionario de Python comienza con la llave izquierda ( {),


termina con la llave derecha ( }) y contiene cero o más elementos key : value
separados por comas ( ,). El key está separado del value por dos puntos ( :).

roaster = {"q1": "Ashley", "q2": "Dolly"}


Fusionando diccionarios con el método .update() en Python

Dados dos diccionarios que deben combinarse, Python lo hace fácil con la
función .update().

Para dict1.update(dict2), los pares clave-valor de dict2 se escribirán en el


diccionario dict1.

Para las teclas en dict1 y dict2, el valor en dict1 se sobrescribirá con el valor
correspondiente en dict2.

dict1 = {'color': 'blue', 'shape': 'circle'}


dict2 = {'color': 'red', 'number': 42}

dict1.update(dict2)

# dict1 is now {'color': 'red', 'shape': 'circle',


'number': 42}
Tipos de valores de diccionario

Python permite que los valores en un diccionario sean de cualquier tipo:


cadena, entero, una lista, otro diccionario, booleano, etc. Sin embargo, las
claves siempre deben ser un tipo de datos inmutable, como cadenas, números
o tuplas.

En el bloque de código de ejemplo, puede ver que las claves son cadenas o
números (int o float). Los valores, por otro lado, son muchos tipos de datos
variados.

dictionary = {
1: 'hello',
'two': True,
'3': [1, 2, 3],
'Four': {'fun': 'addition'},
5.0: 5.5
}
Diccionarios de Python

Un diccionario de Python es una colección desordenada de elementos.


Contiene datos como un conjunto de valores tipo claves: pares.

my_dictionary = {1: "L.A. Lakers", 2: "Houston


Rockets"}
Métodos de valor-clave del diccionario

Al intentar ver la información en un diccionario de Python, existen varios


métodos que devuelven objetos que contienen las claves y los valores del
diccionario.

● .keys() devuelve las claves a través de un objeto dict_keys.

● .values() devuelve los valores a través de un objeto dict_values.

● .items() devuelve tanto las claves como los valores a través de un objeto
dict_items.

ex_dict = {"a": "anteater", "b": "bumblebee", "c":


"cheetah"}

ex_dict.keys()
# dict_keys(["a","b","c"])

ex_dict.values()
# dict_values(["anteater", "bumblebee", "cheetah"])

ex_dict.items()
#
dict_items([("a","anteater"),("b","bumblebee"),("c",
"cheetah")])
método get() para el diccionario

Python proporciona un método .get() para acceder a un valor dictionary si


existe. Este método toma key como primer argumento y un valor
predeterminado opcional como segundo argumento, y devuelve el valor para el
key especificado si key está en el diccionario. Si el segundo argumento no se
especifica y key no se encuentra, se devuelve None.

# without default
{"name": "Victor"}.get("name")
# returns "Victor"

{"name": "Victor"}.get("nickname")
# returns None

# with default
{"name": "Victor"}.get("nickname", "nickname is not
a key")
# returns "nickname is not a key"
El método .pop() para diccionarios en Python

Los diccionarios de Python pueden eliminar pares clave-valor con el método


.pop(). El método toma una clave como argumento y la elimina del diccionario.
Al mismo tiempo, también devuelve el valor que elimina del diccionario.

famous_museums = {'Washington': 'Smithsonian


Institution', 'Paris': 'Le Louvre', 'Athens': 'The
Acropolis Museum'}
famous_museums.pop('Athens')
print(famous_museums) # {'Washington': 'Smithsonian
Institution', 'Paris': 'Le Louvre'}
Archivos

Objeto de archivo Python

Se crea un objeto de archivo de Python cuando se abre un archivo con la


función open(). Puede asociar este objeto de archivo con una variable cuando
abre un archivo usando las palabras clave with y as. Por ejemplo:

with open('somefile.txt') as file_object:

A continuación, puede imprimir el contenido del objeto de archivo, file_object


con print().

print(file_object)

Es posible que vea algo como esto en el terminal de salida:

<_io.TextIOWrapper name='somefile.txt' mode='r'


encoding='UTF-8'>
Método de línea de lectura de Python

Para leer solo una línea en lugar de varias líneas en un archivo de Python, use
el método .readline() en un objeto de archivo que se devuelve desde la función
open(). Cada subsiguiente .readline() extraerá la siguiente línea en el archivo si
existe.
with open('story.txt') as story_object:

print(story_object.readline())

imprimirá solo la primera línea en story.txt.


Análisis de archivos JSON al diccionario

El formato JSON se utiliza para almacenar pares de valores clave. El módulo de


Python json permite leer dicho formato de datos y analizarlo en un diccionario.
La función json.load toma un objeto de archivo como argumento y devuelve los
datos en formato de diccionario.

# Use json.load with an opened file object to read the contents into a
Python dictionary.

# Contents of file.json

# { 'userId': 10 }

import json

with open('file.json') as json_file:

python_dict = json.load(json_file)

print(python_dict.get('userId'))

# Prints 10
Python anexar al archivo

Se puede escribir en un archivo abierto con la bandera 'w' sobrescribe todo el


contenido anterior del archivo. Para evitar esto, podemos agregar a un archivo
en su lugar. Utilizando la bandera 'a' como segundo argumento dentro de la
función open(). Si un archivo no existe, se creará para el modo de adición.

with open('shopping.txt', 'a') as shop:

shop.write('Tomatoes, cucumbers, celery\n')


Python escribir en archivo

De forma predeterminada, un archivo cuando se abre con open() es sólo para


lectura. 'r' Se le pasa un segundo argumento por defecto. Para escribir en un
archivo, primero abra el archivo con permiso de escritura a través del
argumento 'w'. Luego use el método .write() para escribir en el archivo. Si el
archivo ya existe, se sobrescribirá todo el contenido anterior.

with open('diary.txt','w') as diary:

diary.write('Special events for today')


Método de líneas de lectura de Python

En lugar de leer todo el contenido de un archivo, puede leer una sola línea a la
vez. En lugar de .read()devolver una cadena, llame .readlines()para devolver
una lista de cadenas, cada una de las cuales representa una línea individual en
el archivo. Llamando a este código:
with open('lines.txt') as file_object:

file_data = file_object.readlines()

print(file_data)

devuelve una lista de cadenas en file_data:


['1. Learn Python.\n', '2. Work hard.\n', '3. Graduate.']

Iterando sobre la lista, file_data e imprimiendo:

for line in file_data:

print(line)

salidas:

1. Learn Python.

2. Work hard.

3. Graduate.
Clase csv.DictWriter

En Python, el módulo csv implementa clases para leer y escribir datos tabulares
en formato CSV . Tiene una clase DictWriter que funciona como un escritor
normal pero asigna un diccionario a las filas de salida. Las claves del diccionario
son nombres de columnas, mientras que los valores son datos reales.

El constructor csv.DictWriter toma dos argumentos. El primero es el


controlador de archivos abiertos en el que se escribe el CSV. El segundo
parámetro con nombre, fieldnames, es una lista de nombres de campo que
maneja el CSV.

# An example of csv.DictWriter

import csv

with open('companies.csv', 'w') as csvfile:

fieldnames = ['name', 'type']

writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

writer.writeheader()

writer.writerow({'name': 'Moegui', 'type': 'Learning'})

writer.writerow({'name': 'Google', 'type': 'Search'})

"""

After running the above code, companies.csv will contain the following
information:

name,type

Moegui,Learning

Google,Search

"""
Método de lectura de Python

Después de abrir un archivo con la función open() devuelve un objeto de


archivo, se llama llame al método .read() del objeto de archivo para devolver
todo el contenido del archivo como una cadena de caracteres. Ejecutando el
siguiente código:
with open('mystery.txt') as text_file:

text_data = text_file.read()

print(text_data)

producirá una cadena que contiene todo el contenido del archivo leído:

Mystery solved.

Congratulations!
Clases
método repr()

El método __repr__() de Python se usa para decirle a Python cuál debe ser la
representación de cadena de la clase. Solo puede tener un parámetro, self y
debe devolver una cadena.

class Employee:
def __init__(self, name):
self.name = name

def __repr__(self):
return self.name

john = Employee('John')
print(john) # John
Métodos de clase de Python

En Python, los métodos son funciones que se definen como parte de una clase.
Es una práctica común que el primer argumento de cualquier método que sea
parte de una clase sea el objeto real que llama al método. Este argumento
suele llamarse self .

# Dog class
class Dog:
# Method of the class
def bark(self):
print("Ham-Ham")

# Create a new instance


charlie = Dog()

# Call the method


charlie.bark()
# This will output "Ham-Ham"
Instanciar una clase de Python

En Python, se debe crear una instancia de una clase antes de usarla.

Como analogía, se puede pensar en una clase como un modelo (Auto), y una
instancia es una implementación real del modelo (Ferrari).

class Car:
"This is an empty class"
pass

# Class Instantiation
ferrari = Car()
Variables de clase de Python

En Python, las variables de clase se definen fuera de todos los métodos y


tienen el mismo valor para cada instancia de la clase.

Se accede a las variables de clase con las sintaxis instance.variable o


.class_name.variable

class my_class:
class_variable = "I am a Class Variable!"

x = my_class()
y = my_class()

print(x.class_variable) #I am a Class Variable!


print(y.class_variable) #I am a Class Variable!
Método de inicio de Python

En Python, el método .__init__() se usa para inicializar un objeto recién creado.


Se llama cada vez que se instancia la clase.

class Animal:
def __init__(self, voice):
self.voice = voice

# When a class instance is created, the instance


variable
# 'voice' is created and set to the input value.
cat = Animal('Meow')
print(cat.voice) # Output: Meow

dog = Animal('Woof')
print(dog.voice) # Output: Woof
Función de tipo Python ()

La función type() de Python devuelve el tipo de datos del argumento que se le


pasó.

a = 1
print(type(a)) # <class 'int'>

a = 1.1
print(type(a)) # <class 'float'>

a = 'b'
print(type(a)) # <class 'str'>

a = None
print(type(a)) # <class 'NoneType'>
Clase de Python

En Python, una clase es una plantilla para un tipo de datos. Una clase se puede
definir usando la palabra clave class.

# Defining a class
class Animal:
def __init__(self, name, number_of_legs):
self.name = name
self.number_of_legs = number_of_legs
Función dir()

En Python, la función integrada dir(), sin ningún argumento, devuelve una lista
de todos los atributos en el ámbito actual.

Con un objeto como argumento, dir() intenta devolver todos los atributos de
objeto válidos.

class Employee:
def __init__(self, name):
self.name = name

def print_name(self):
print("Hi, I'm " + self.name)

print(dir())
# ['Employee', '__builtins__', '__doc__',
'__file__', '__name__', '__package__',
'new_employee']

print(dir(Employee))
# ['__doc__', '__init__', '__module__',
'print_name']
__main__ en python

En Python, __main__ es un identificador utilizado para hacer referencia al


contexto del archivo actual. Cuando un módulo se lee desde una entrada
estándar, un script o desde un indicador interactivo, __name__ se establece en
__main__.

Supongamos que creamos una instancia de una clase llamada CoolClass.


Imprimir el type() de la instancia dará como resultado:
<class '__main__.CoolClass'>

Esto significa que la clase CoolClass se definió en el archivo de script actual.

También podría gustarte