Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Elementos básicos de Python

5/31
Recursos

Aportes 617

Preguntas 57

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

  • ¿Qué es un lenguaje de programación?
    Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un programador escribir un conjunto de órdenes, acciones consecutivas, datos y algoritmos para, de esa forma, crear programas que controlen el comportamiento físico y lógico de una máquina.

  • ¿Qué tipos de lenguaje de programación existen?
    El lenguaje de programación es la base para construir todas las aplicaciones digitales que se utilizan en el día a día y se clasifican en dos tipos principales: lenguaje de bajo nivel y de alto nivel.

  1. Lenguaje de programación de bajo nivel
    Son lenguajes totalmente orientados a la máquina.
    Este lenguaje sirve de interfaz y crea un vínculo inseparable entre el hardware y el software.

  2. Lenguaje de programación de alto nivel
    Tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas instrucciones más fáciles de entender.

  3. Lenguaje específico de dominio
    En desarrollo de software e ingeniería de dominio, un lenguaje específico de dominio, o “lenguaje específico del dominio”, (en inglés domain-specific language, DSL) es un lenguaje de programación o especificación dedicado a resolver un problema en particular, representar un problema específico y proveer una técnica para solucionar una situación particular. El concepto no es nuevo pero se ha vuelto más popular debido al aumento del uso de modelaje específico del dominio.1​

  4. Lenguaje de propósito general
    Se llama lenguaje de propósito general al lenguaje de programación cuyos procedimientos, instrucciones y estructuras de datos están diseñados para resolver todo tipo de problemas.

  5. Lenguaje de interpretados y compilados
    La principal diferencia entre un lenguaje compilado y uno interpretado es que el lenguaje compilado requiere un paso adicional antes de ser ejecutado, la compilación, que convierte el código que escribes a lenguaje de máquina. Un lenguaje interpretado, por otro lado, es convertido a lenguaje de máquina a medida que es ejecutado.

Ejemplos de lenguajes compilados incluyen C, C++, Java, Go y Rust, entre muchos otros. Ejemplos de lenguajes interpretados incluyen Ruby, Python y JavaScript, entre muchos otros. A todos estos lenguajes se les conoce como lenguajes de alto nivel.

1 + 1 # 1
'Platzi' / 5 # Error
'Platzi' * 3 #PlatziPlatziPlatzi
#PrintStatement
print('Hola mundo')
'Mr' + '. Internatuta'
2 + 2

¿Que es un objeto?
Concepto, abstracción o cosa con límites bien definidos y con significado para el problema que se está manejando

  • Escalares vs No escalares
    -Tipos
    int.
    float.
    bool.
    str.
#Definiendo variables
my_int  = 1
my_float = 1.0
my_bool = True
my_none = None
my_str = 'Hola'

#Imprimiendo el tipo
type(my_int)
type(my_float)
type(my_bool)
type(my_none)
type(my_str)

¿Que pasa si ejecutas esto?


1 + 1 
2 - 5
2.0 * 3
6 // 2
6 // 4
6 / 4
7 % 2
2 ** 2

Resultado

>>> 1 + 1
2
>>> 2 - 5
-3
>>> 2.0 * 3
6.0
>>> 6 // 2
3
>>> 6 // 4
1
>>> 6 / 4
1.5
>>> 7 % 2
1
>>> 2 ** 2```

Como curiosidad:

¿Qué sucede cuando sumamos True + True o True + False?

>>> True + True
2
>>> True + False
1```

Esto sucede porque internamente los booleanos True y False tienen asignados valores de 1 y 0 respectivamente.

Bonus: Los booleanos se llaman así en honor a [George Boole](https://es.wikipedia.org/wiki/George_Boole).

Inicio de la consola desde el sistema:
Inicio + R >> "cmd"
Luego en la consola se puede escribir “Python3.x”. Pero en mi caso funciona si escribo sólo Python.
Otra forma de abrir la consola es abrir el menú Inicio y escribir “Python” y aparecerán dos opsciones: El IDLE y Python 3.x. Ahí se ejecuta prácticamente lo mismo que lo anterior.

Les dejo mis apuntes en https://github.com/karlbehrensg/introduccion-pensamiento-computacional

Elementos básicos de Python

En esta sección veremos los elementos básicos de Python, sin embargo estaremos aprendiendo sobre los elementos básicos de cualquier lenguaje de programación.

En los lenguajes tenemos definiciones como:

  • Bajo nivel vs alto nivel:
    Bajo nivel significa que esta diseñado para las máquinas. Alto nivel por su parte es orientado a los humanos.

  • General vs dominio específico: Los lenguajes generales tienen todos los primitivos de Turing para poder implementar y computar cualquier tipo de algoritmo. Por otro lado los de dominio específico son lenguajes especializados a tareas muy específicas.

  • Interpretado vs compilado: En los lenguajes interpretados mientras corre el programa se traduce la instrucción a lenguaje máquina que para ejecutar, en cambio para los lenguajes compilados estos toman todas las instrucciones y las traduce antes a lenguaje máquina.

Python es un lenguaje de alto nivel, general e interpretado.

Los elementos básicos son:

  • Literales: son formas simples de inicializar objetos directamente en memoria.

    literales = 1, 'abc', 2.0, True
    
  • Operadores: son los operadores algebraicos.

    operadores = + / % ** = ==
    

Podemos interpolar literales y operadores en nuestros algoritmos. Si el significado dentro de nuestra instrucción no tiene sentido para el lenguaje nos devolverá el tipo de error que tengamos. Para iniciar en consola él interprete lo haremos escribiendo.

python3

Con esto dentro de la consola podremos escribir código de Python.

>>> 1 + 2
3

>>> 1 3.0 # error sintáctico
  File "<stdin>", line 1
    1 3.0
      ^
SyntaxError: invalid syntax

>>> 5 / 'Texto' # error semántico estático
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for /: 'int' and 'str'

>>> 5 * 'Texto'
'TextoTextoTextoTextoTexto'

>>> print('Hello, world!') # statement o enunciado
Hello, world!

Objetos, expresiones y tipos numéricos

Vamos hablar de objetos, expresiones y tipos numéricos.

  • Objetos: son la abstracción más alta de cualquier lenguaje de programación, son la forma en que modelamos el mundo dentro de nuestros programas. Los objetos se encuentran en memoria y podemos referenciarlas con algún tipo de variable.

  • Tipos: los objetos pueden ser enteros, flotantes, booleanos e incluso pueden ser objetos más complejos como el modelo de un humano con todos sus características y atributos.

  • Escalares vs no escalares: los escalares son datos que podemos subdividir en piezas fundamentales, estos pueden ser enteros, flotantes, etc. Los no escalares son los datos que no podemos subdividir.

>>> <objeto> <operador> <objeto>  # Esta es una expresión
<valor>

>>> 'Estoy' + 'Programando!'      # Con esta expresión
'EstoyProgramando!'               # Obtenemos este valor

>>> 2 + 2                         # Con esta expresión
4                                 # Obtenemos este valor

En Python podemos ver los tipos de datos que contienen nuestros objetos (variables), para esto usamos la función Type.

>>> my_int = 1
>>> my_float = 1.0
>>> my_bool = False
>>> my_none = None

# Imprimiremos los tipos de nuestras variables.

>>> type(my_int)
<class 'int'> 

>>> type(my_float)
<class 'float'>

>>> type(my_bool)
<class 'bool'>

>>> type(my_none)
<class 'NoneType'>

El álgebra modular, aritmética modular o matemática modular es un sistema aritmético para calcular los residuos resultantes entre la división de dos números enteros dónde la relación o el módulo determina una secuencia de reloj.

  • A mod B = (A + K * B) mod B para cualquier entero K

  • 3 mod 10 = 3
    La relación de reloj la encontramos cuándo dividimos una secuencia de enteros entre otro entero y verificamos el residuo entero

Referencias:
Wikipedia
Khan Academy

Los lenguajes de Programación se puede clasificar en:
*Bajo nivel: Diseñado para las máquinas
*Alto nivel: Diseñado para los humanos

*General: tienen los primitivos de Turing para poder implementar y computar cualquier tipo de algoritmo.
*Dominio especifico: Son lenguajes especializados que están tarjeteados a aplicaciones muy específicas.

*Interpretado: Mientras corre el programa, después de cada instrucción esta se traduce al lenguaje máquina y ella lo lee.
*Compilado: El humano convierte el lenguaje antes de entregárselo a la computadora en un lenguaje máquina.

Python es de alto nivel, general e interpretado.

Elementos Básicos
*Literales.- formas de inicializar objetos directamente en memoria de manera en que se anotan en código. Ejemplos: 1, “abc”, 2.0, True.
*Operadores.- se utilizan con los literales. +, /, %, **, = , ==.

La manera en la cual se interpolan los símbolos en Python es: <literal> <operador> <literal>

*Objetos: Es la abstracción más alta dentro de cualquier lenguaje de programación, son la forma en que modelamos nuestros programas. Son valores en memoria que podemos referenciar con algún tipo de variable.
Los objetos tienen diferentes tipos como pueden ser: Enteros, flotantes, buleanos, vectores. Los cuales se pueden clasificar en:
*Escalares: Se pueden subdividir.
*No escalares: No se pueden subdividir.

Por si alguien tiene curiosidad de saber cuáles son todos los tipos de datos que hay en python

type(True)
class 'bool'

 type(2)
class 'int'

 type(2.)
class 'float'

 type([])
class 'list'

 type(())
class 'tuple'

 type("")
class 'str'

 type({},)
class 'dict'

 type({'h','i'})
class 'set'

en este video falto hacer los pasos para ingresar a la consola, tuve que buscar video y hacer pruebas para abrir la consola
no esta claro

Les comparto mis apuntes de esta clase. Apenas estoy empezando a usar este formato y estoy viendo como mejorar mis apuntes y que sean funcionales. Cualquien sugerencia es bien recibida.

El operador módulo es utilizado para obtener el residuo en una división

11 % 3 = 2

Esto por que el 11 contiene tres veces al 3, en total seria 9, y aun sobran 2 para llegar al 11… ese 2 es el residuo.

RESUMEN: ELEMENTOS BÁSICOS DE PYTHON :


Existen en general lenguajes con las siguientes propiedades:

Alto: Lenguajes optimizados para parecer el lenguaje natural, o lo más cercano al lenguaje humano.
Bajo nivel: Son mas cercanos al lenguaje máquina, lenguaje binario.

Generales: Tienen todos los primitivos de Turing para poder implementar y computar cualquier algoritmo.
Especificos: Lenguajes especializados a aplicaciones muy específicas.

Interpretados: Mientras corre el programa, las instrucciones se traducen al lenguaje máquina.
Compilado: Se convierte antes al lenguaje máquina y luego se le entrega a la computadora.

Python es de alto nivel, general e interpretado

  • Literales: son simplemente formas de inicializar el objeto directamente en memoria.
  • Operadores: Suma, resta, módulo, exponenciar, igualar.

El patrón para interpolar en el lenguaje:

  • (literal - operador- literal ) , (objeto-operador-objeto)

ERRORES :
Es importante entender los errores de todo lenguaje para poder indentificarlos:

  • Errores de sintaxis
  • Errores semánticos sintantacticos
  • Errores de lógica

Nota: Algunos operadores funcionan entre diferentes literales.


Statements
Son aquellas expresiones que son altamente funcionales, algunos permiten imprimir nuestros datos en pantalla, contar qué tipo de variables son las cosas.

  • print nos permite imprimir algo en pantalla
  • type nos dice de qué tipo es la variable que usamos.
numero=1
string="Nunca pares de aprender"
diccionario={}
arreglo=[]

print(numero)
print(type(numero))
print(string)
print(type(string))
print(diccionario)
print(type(diccionario))
print(arreglo)
print(type(arreglo))

Operadores

Algunos de los operadores de python, la operación de módulo sirve para encontrar el residual de una división, sirve para saber si una división es exacta o no.

suma = 3 + 3
resta = 3-2
producto=3*4
division=3//3
modulo=25%5
print(suma,resta,producto,division,modulo)

Para saber más aquí está la documentación, donde puede apreciarse la sintáxis y la función que resuelve dicha operación.

OBJETOS, EXPRESIONES Y TIPOS NUMERICOS


Los objetos son la abstracción más alta en cualquier lenguaje de programación, son la forma en que modelamos el mundo, una cadena de texto, un mouse, una camiseta. Los objetos son valores en memoria que se referencian mediante variables.

Objetos de tipo enteros, flotantes, boleanos, vectores etc. Los tipos podemos dividirlos entre:

  • Escalares: Que pueden subdividirse en piezas fundamentales
  • No escalares: No admiten esta subdivisión

Un expresión de cualquier lenguaje de programación es (objeto-operador-objeto), objeto=literal.
Las expresiones regresan valores.

A mi parecer, ¡este es el verdadero curso de programación básica! Cuando hacia el curso con Fredy, no sentía el por qué de muchas funcionalidades, cosas que se han complementado a lo largo de este curso. ME ENCANTA -

Con el operador modulo ‘%’ podemos encontrar el residuo de una división:
_5 % 3 = 2 _
muy útil para verificar el factor de un número

Para limpiar la consola de Python importan la libería system y mandan a llamar la función system(“cls”) cuando deseen limpiar la consola

from os import system
system("cls")

En matemática, la aritmética modular es un sistema aritmético para clases de equivalencia de números enteros llamadas clases de congruencia.

El operador módulo que se representa con % sirve para encontrar el residuo en una división. La aritmética modular es un sistema que se construye con relaciones de congruencia entre números enteros.

Para explicarlo, hay un ejemplo que encontré era con las horas del día. Suponemos que son las 16 horas (4pm) y a partir de aquí queremos sumar 135 horas, sin embargo lo que necesitamos saber es que hora es después de realizar la suma sin importar el día.

La suma daría 151 horas cierto? pero un día solo tiene 24… Bueno, aquí es donde entraría el módulo; si en la terminal ponemos 151 % 24 el resultado sería = 8, es decir, al pasar 151 horas desde las 4pm la hora del día sería las 8am.

Esto es sólo un ejemplo que encontré sobre cómo se podría usar pero parece que hay muchas aplicaciones más de las cuales no tengo idea jajaja

Álgebra modular:En matemática, la aritmética modular es un sistema aritmético para clases de equivalencia de números enteros llamadas clases de congruencia. La aritmética modular fue introducida en 1801 por Carl Friedrich Gauss en su libro Disquisitiones Arithmeticae.
Wikipedia dixit 😛

Existen diferentes lenguajes de programación, los cuales están clasificados según su proximidad al hardware o al usuario.

Comparto mis apuntes de esta clase:

>>> type(1)
<class 'int'>

>>> type(1.0)
<class 'float'>

>>> type(False)
<class 'bool'>

>>> type(None)
<class 'NoneType'>

APUNTES

Vamos a ver los elementos básicos de programación que se pueden pueden traducir a cualquier otro lenguaje de programación:
El lenguaje se divide en:

  • Bajo nivel: esta diseñado para las maquinas, su lenguaje se acerca mas a los números.

  • Alto nivel: significa que esta diseñado para los humanos, se acerca mucho mas al lenguaje en que nos comunicamos.

  • General: tiene todos los primitivos para implementar algoritmos, del cual nos habla turing.

  • Dominio especifico: son para aplicaciones o clientes específicos.

  • Interpretado: es un lenguaje que funciona de modo que mientras corre el programa cada instrucción se traduce a lenguaje maquina.

  • Compilado: significa que nosotros convertimos el lenguaje para que la maquina lo interprete

  • Python es un lenguaje de alto nivel, es general, y es interpretado.
    Elementos básicos:

  • #< literales> = son formas de inicializar objetos directamente en memoria de manera en que las anotamos directamente en código ejemplo: enteros(1,2,3…), cadenas (abc…), flotantes(2.0,…), booleanos(true, false), se pueden interpolar con ciertos operadores.

  • #<operadores> = ( sumar(+), dividir(/), multiplicar(*), modulo(%), exponenciar(**), asignar(=), igualdad(==))
    Funciones:

  • print(‘’) = imprimir información directamente en la consola.
    Objetos, expresiones y tipos numéricos:

  • un objeto es la abstracción mas alta dentro de cualquier lenguaje de programación, son la forma en la que modelamos el mundo de nuestros programas, ejemplo: un entero, una cadena de texto, es un objeto, son la forma en que modelamos el mundo en nuestro lenguaje de programación, son valores en memoria que podemos referenciar con algún tipo de variable.

  • Los objetos tienen diferentes tipos que se pueden clasificar en escalares (se pueden subdividir en pequeñas piezas. ejemplo = una matriz se puede subdividir en enteros o flotantes.); Y no escalares( no se pueden subdividir. ejemplo = un entero no se puede subdividir)

  • <objeto> <operador> <objeto>#es una expresión que regresa un >>> valor

👨‍💻Sobre álgebra modular no sé demasiado pero lo que debes entender sobre esto en cuanto a la programación es que el operador mod (modulo) representado con el símbolo de % significa el residuo de una división, Ejemplo : 8 mod 3 = 2 porque si dividimos el número 8 entre 3 el resultado nos da 2.6666^ y el residuo es dos, hazlo por tu mismo y ya lo entenderás. En python se puede hacer así.

>>> 8 % 3
2

Buen día aquí una forma de entender de una forma sencilla entre lenguaje de alto nivel y de bajo nivel:
Lenguajes de alto nivel: diseñado para ser entendido por los humanos (Python, C, C++), usa términos entendibles como print, return, if, case, for, while, etc.
Ejemplo:
Para ver en pantalla el mensaje mítico “Hola Mundo!” en Python :
Print(‘Hola Mundo!’)
Listo
Lenguaje de bajo nivel: Diseñado para ser entendido por las maquinas (lenguaje ensamblador y lenguaje maquina)
Ejemplo:
Para ver en pantalla el mensaje mítico “Hola Mundo!” en Python :
.model small
.stack
.data
Msj db “Hola mundo!”, “$”
.code
Inicio proc ;Inicia programa
Mov ax,seg msj ;ds=ax=saludo
Mov ah,09 ;llama a imprimir
Lea dx, msj ;mov dx, offset msj
Int 21h ;interrupción DOS
Mov ax 4c00h ;código de salida
Int 21h ;interrupción DOS
Inicio endp ;termina programa
End inicio

Listo (Bastante complicado ☹ )

Espero te sirva, saludos.

1+2
3

2-5
-3

2.0 * 3
6.0

6 // 2
3

6 // 4
1

6 / 4
1.5

7%2
1

2**3
8

Lenguajes de programación

bajo nivel vs alto nivel

Alto nivel: diseñado para los humanos se acerca mas al lenguaje natural a la forma que nos comunicamos nosotros.

Bajo nivel: esta optimizado para que una maquina pueda entenderlo. Se parece mas a los números 1 y 0.

General vs dominio especifico

General: Significa que tiene todos los primitivos para poder implementar cualquier algoritmo.

Dominio especifico: lenguajes tarjeteados a aplicaciones muy especificas.

Interpretado: mientras corre el programa después de cada instrucción se traduce a lenguaje maquina.

Compilado: nosotros convertimos antes de entregárselo a la computadora en un lenguaje maquina.

Literales: forma de inicializar objetos en memoria.

Objetos, expresiones y tipos numéricos

1-objetos: abstracción mas alta de cualquier lenguaje de programación
Tienen diferentes tipos: Pueden ser enteros, booleanos, vectores y etc.
2-Tipos: Int, Float, Bool…
3- Escalares vs no escalares

En el 9:50, lo que regresa los types, es lo siguiente:

<class 'int'>
<class 'float'>
<class 'bool'>
<class 'NoneType'>

Yo también tuve problemas con la consola. Así que tuve que buscar en la web, https://www.cmasdev.net/2019/04/python-instalando-en-visual-studio-code.html , con esto me corre perfectamente. Solo tengo que introducir python en mi terminal.

Acá puede leer más sobre el Algebra o Aritmética Modular

% modulo es el residuo de una division

No vamos a Aprender python sino que se hablará de los elementos básicos de programación

  • Alto nivel : está diseñado para los humanos. *Pyrthon
  • Bajo nivel: Está optimizado para las computadoras, se acerca mas a los 1/0
  • General: Que tiene todos los primitivos que nos otorga Turin para poder implementar algoritmos. *Python
  • Dominio Específico: Están dirigidos hacia aplicaciones muy específicas
  • Interpretados: Mientras correo el programa , después de cada instrucción esta es leída por el programa. *Python
  • Compilado: Se convierte a lenguaje maquina antes de correr el programa

En Python se usa la secuencia de Literal, Operador, Literal

>>> 3+2
>>> 5/'python'
>>> 5 * 'Platzi'
>>> print('Hola, Mundo')

Objetos Expresiones y tipos numéricos

Objetos: Son la representación mas alta en programación, es la forma en la que modelamos el mundo en nuestros programas. Son valores en memoria que podemos referenciarlos con algún tipo de variable.

Tienen tipos, Escalares y no escalares

<objeto> <operador> <objeto> #expresión

Las expresiones nos regresan un valor

type() #Nos regresa el tipo de la variable

Phyton es un lenguaje de alto nivel, general e interpretado.
Trabaja en tiempo real.
ALGEBRA MODULAR: resolver operaciones matematicas mediante congruencias, como las propiedades que enseñaban en la escuela (asociativa, conmutativa).

El modulo tengo entendido que es el residuo de la division (por si no es exacta, digamos 7 modulo 2 (7/2) = 1 😄

Si usas MAC sigue los siguientes pasos para la instalación de Python:

  1. Abrir el buscador Spotlight con la: Tecla command + Tecla Barra Espaciadora. Te mostrará la siguiente imagen:
  1. Escribir en el buscador: “terminal.app” y luego presionar la Tecla Enter, para abrir el terminal:

Te mostrará el terminal:

  1. Copia y pega la siguiente linea en el Terminal, para configurar el Homebrew: (Les dejo el link https://brew.sh/).
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  1. Copia y pega la siguiente linea en el Terminal, para instalar Python:
brew install python3
  1. Para validar si tu instalación de Python fue correcta, copia y pega la siguiente linea en el terminal:
python3

Te debería imprimir la siguiente imagen, donde se muestra la versión de Python, en este caso “Python 3.7.7”:

Espero haber ayudado. Saludos.

El algebra modular se basa en la operación de módulo o residuo. Si vamos a hacer a%b, entonces la respuesta es el residuo de la división entre a/b.
Ejemplos:
8%2=0 -> 0 +24 = 8
9%2=1 -> 1 + 2
4 = 9
15%4=3 -> 3 + 4*3 = 15
El algebra modular nos permite expandir aún más la operación base de modulo, a otros contextos especiales.

  • Lenguaje de Alto Nivel: Está diseñado para los humanos. Se acerca mas al lenguaje que nosotros hablamos.

  • Lenguaje de Bajo Nivel: Está mas optimizado para que la máquina pueda entenderlo. Se acerca mas a los 1 y 0.

>>> my_int = 1
>>> my_float = 1.0
>>> my_bool = False
>>> my_none = None
>>>
>>> type(my_int)
<class 'int'>
>>> type(my_float)
<class 'float'>
>>> type(my_bool)
<class 'bool'>
>>> type(my_none)
<class 'NoneType'>
>>>
>>> 1 + 2
3
>>> 2 - 5
-3
>>> 2.0 * 3
6.0
>>> 6 // 2
3
>>> 6 // 4
1
>>> 6 / 4
1.5
>>> 7 % 2
1
>>> 2 ** 3
8```

print('1+2=',1+2,type (1 + 2))
>> 1+2= 3 <class 'int'>
print('2.0**3=',2.0 ** 3,type (2.0 ** 3))
>> 2.0 ** 3= 8.0 <class 'float'>

en python 3.10.2 en el cmd no me imprime con print(‘hola mundo’). Con solo ejecutar print, ya lo hace x)

Estaria genial que pudieran dejar una guía escrita de python, un pdf con la teoría como hacen con otros cursos aqui en Platzi

El álgebra modular tiene como base comprobar si dos números son congruentes. Esto ocurre cuando al dividirlos por un número cualquiera, ambos pertenecen a la misma clase de equivalencia. Cuando dividimos un número cualquiera por otro número cualquiera, podemos obtener n-1 restos diferentes, siendo n igual al divisor. Cada uno de estos posibles restos es una clase de equivalencia. Por lo tanto dos numeros seran congruentes si tienen el mismo resto al dividirlos por un numero x. La notación algebraica sería la siguiente: a ≡ b (mod n). Un ejemplo rapido: 36 ≡ 12 (mod 6), entonces 36 es congruente con 12 ya que ambos pertenecen a la clase de equivalencia 0, es decir, ambos tienen resto 0 al dividirlos por 6.

Acuerdense que en clases pasadas dan consolas interactivas en las cuales pueden hacer codigos basicos, lo digo porque no vale la pena usar editor de codigo para aprender a hacer operaciones tan simples. Pueden usar “Cmder”, “Ubuntu” u otros derivados de Linux etc…

El operador modular lo que hace es hallar el residuo de una división.
En python es el símbolo %, y en temas generales se puede encontrar como la función mood.
ejemplo: 27 mood 4 ó 27 % 4

  1. primero se divide 27/4 y nos queda 6.75
  2. luego se resta el entero del resultado, en este caso es el 6 y nos queda 0.75
  3. por último, se multiplica 0.75 por el numero 4 y nos queda 3
    este 3 es el resultado de 27%4 ó 27 mood 4.
    todo lo anterior el operador % lo hace automáticamente.

El módulo es el residuo de una división, recordemos que en colegio nos enseñaron las partes de una división: dividendo, divisor, cociente y residuo. Una división es de la forma D/d = C + r, donde:
D = dividendo
d = divisor
C = cociente
r = residuo
Cuando una división es exacta, el residuo es 0. El residuo en una división siempre es un número entero.
El operador módulo genera o devuelve el residuo de una división, sea ésta exacta o no. Esto es igual en todo lenguaje. En sus primeros programas harán cosas como condicionales para hacer que si un número es par ocurra una cosa y si es impar, haga otra, en estos casos se usa el módulo, bien sea que lo uses para definir un par o un impar como punto de decisión.

No me funciono el Visual Code, como hago?

En un lenguaje compilado, la máquina de destino traduce directamente el programa. En un lenguaje interpretado, el código fuente no es directamente traducido por la máquina de destino. En cambio, un distinto programa, mejor conocido como intérprete, lee el código y lo ejecuta.

Okay… ¿Pero qué significa eso realmente?
Imagina que tienes una receta de hummus y la quieres preparar, pero está escrita en griego antiguo. Hay dos maneras en que tú, alguien que no habla griego antiguo, podrías seguir dichas instrucciones.

La primera es si alguien ya lo ha traducido al español para ti. Tú (y cualquiera que hable el idioma) podrías leer la versión en español de la receta y hacer el hummus. Piensa en esta receta traducida como la versión compilada.

La segunda manera es si tienes un amigo que sabe griego antiguo. Cuando estés listo para hacer hummus, tu amigo se sienta junto a ti y traduce la receta al español mientras avanzas, línea por línea. En este caso, tu amigo es el intérprete de la versión interpretada de la receta.

Para todos aquellos que estén empezando en la programación, deben entender que en la historia de la misma, hay dos grandes paradigmas. La primera es la Programación Orientada a Procedimientos, qué como tenía muchas desventajas como que era ilegible y muy difícil de leer hasta para el mismo programador de código, código espaguetti, no se podía reutilizar el código, etc. Se pasó al segundo paradigma o Programación Orientada a Objetos (que es la programación moderna y actual y la más óptima para la resolución de problemas). En esta última, que la usamos actualmente y con diferentes lenguajes como Java, Javascript, Python, C++, etc hay muchas definiciones pero la más importante y la base de todo es el Objeto: “Son la abstracción más alta dentro de cualquier lenguaje de programación. Son la forma en la que modelamos el mundo dentro de nuestros programas.” En pocas palabras es pasar el mundo real al código de programación.

Lo que me saldría son los tipos de datos, que sería int=Entero, float=Decimal, boolean=Booleano y none=NoneType

Resultado del cmd :

>>> 1+2
3
>>> 2-5
-3
>>> 2.0*3
6.0
>>> 6//2
3
>>> 6//4
1
>>> 6/4
1.5
>>> 7%2
1
>>> 2**3
8
>>>

Muy bien, este curso sirve como complemento del curso básico de Python, ya se me ocurrieron un montón de ideas para mejorar el código que hice en el curso anterior.
Muy bueno el profe se explica muy bien

¿Qué es un lenguaje de programación?
Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un programador escribir un conjunto de órdenes, acciones consecutivas, datos y algoritmos para, de esa forma, crear programas que controlen el comportamiento físico y lógico de una máquina.

¿Qué tipos de lenguaje de programación existen?
El lenguaje de programación es la base para construir todas las aplicaciones digitales que se utilizan en el día a día y se clasifican en dos tipos principales: lenguaje de bajo nivel y de alto nivel.

Lenguaje de programación de bajo nivel
Son lenguajes totalmente orientados a la máquina.
Este lenguaje sirve de interfaz y crea un vínculo inseparable entre el hardware y el software.

Lenguaje de programación de alto nivel
Tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas instrucciones más fáciles de entender.

Lenguaje específico de dominio
En desarrollo de software e ingeniería de dominio, un lenguaje específico de dominio, o «lenguaje específico del dominio», es un lenguaje de programación o especificación dedicado a resolver un problema en particular, representar un problema específico y proveer una técnica para solucionar una situación particular.

Lenguaje de propósito general
Se llama lenguaje de propósito general al lenguaje de programación cuyos procedimientos, instrucciones y estructuras de datos están diseñados para resolver todo tipo de problemas.

Lenguaje de interpretados y compilados
La principal diferencia entre un lenguaje compilado y uno interpretado es que el lenguaje compilado requiere un paso adicional antes de ser ejecutado, la compilación, que convierte el código que escribes a lenguaje de máquina.

>>> 10/3
3.3333333333333335
>>> 9/3
3.0
>>> 10%3
1
>>> 9%3
0
>>> 10//3
3
>>> 9//3
3
>>>```

, 😮

Hola yo empecé programando con C. Después de conocer C he hecho el curso de Python y me ha gustado mucho. Usa prácticamente los mismos elementos que Python pero con una sintaxis mucho más sencilla y amigable.

valor * -1
-1

valor
True

not valor
False

valor
True

valor * 2
2

valor **2
1

valor
True

3.0 * True
3.0

3 * False
0

Otra forma de realizar raíces podría ser, por medio de uso de elevaciones fraccionarias:

4**(1/2)
el resultado es:

2.0
puede funcionar para al cubo, cuarta, quinta, etc.:

8**(1/3)
el resultado es:

2.0

Muy buena clase! B)

excelente repaso

ELEMENTOS BASICOS DE PYTHON:
los lenguajes los ´podemos dividir entre:
len bajo nivel: esta optimizado para que una maquina lo pueda enternder
leng alto nivel: deseñado para que los humanos lo puedan entendr
leng general: aquellos que tienen todos los primitivos que dijo turin que se necisitan para traducir los algoritmo
leng de dominiio especifico:lenguajes espcializados a unas teras
leng interpretados: significa que despues de cada instruccion estas son traducidos al lenguaje de la maquina para que ella lo interprete
leng compilado: es aquel que nosotros convertimos el lenguaje en un sentido que ella puede entender antes de entregarselo

Un lenguaje de programación es un mecanismo para darle instrucciones a la computadora, instrucciones bien detalladas y especificas para realizar cierta función, un lenguaje hace de intermediario entre una persona y la maquina.
Existen varios tipos de lenguajes:
Bajo nivel
Alto nivel
Los lenguajes de alto nivel están diseñados para mejorar la comprensión de los humanos a la hora de programar, mientras que los de bajo nivel están diseñados para tener una comunicación más directa con la computadora.
A su vez lo podemos dividir como especificos o generales, siendo los generales poder ser utilizado para programar cualquier programa mientras que uno especifico solo está restrigindo a ciertas tareas.
Luego están los lenguajes compilados e interpretados, los compilados se traducen a lenguaje maquina antes de ejecutarse mientras que los interpretados son traducidos a lenguaje maquina mientras se ejecutan.
En los lenguajes tenemos objetos.
Un objeto es una idealización y una forma de imitar algo en el mundo real pero para lenguajes de programación.
Hay objetos primitivos que nos permiten crear valores rapidamente en memoria.
Como:
Int
Float
str
bool
Estos objetos pueden usarse en expresiones para generar procesos mas complejos, como sumar numeros, unir textos etc.

Un lenguaje de programación es un mecanismo para darle instrucciones a la computadora, instrucciones bien detalladas y especificas para realizar cierta función, un lenguaje hace de intermediario entre una persona y la maquina.
Existen varios tipos de lenguajes:

  • Bajo nivel

  • Alto nivel

Prueba

>>> 1+2  
3        
>>> 2-5  
-3       
>>> 2.0*3
6.0      
>>> 6//2 
3        
>>> 6//4 
1        
>>> 6/4  
1.5      
>>> 7%2  
1        
>>> 2**3 
8        

Un lenguaje de programación es un mecanismo para darle instrucciones a la computadora, instrucciones bien detalladas y especificas para realizar cierta función, un lenguaje hace de intermediario entre una persona y la maquina.

Existen varios tipos de lenguajes:

  • Bajo nivel
  • Alto nivel

Los lenguajes de alto nivel están diseñados para mejorar la comprensión de los humanos a la hora de programar, mientras que los de bajo nivel están diseñados para tener una comunicación más directa con la computadora.

A su vez lo podemos dividir como especificos o generales, siendo los generales poder ser utilizado para programar cualquier programa mientras que uno especifico solo está restrigindo a ciertas tareas.

Luego están los lenguajes compilados e interpretados, los compilados se traducen a lenguaje maquina antes de ejecutarse mientras que los interpretados son traducidos a lenguaje maquina mientras se ejecutan.

En los lenguajes tenemos objetos.

Un objeto es una idealización y una forma de imitar algo en el mundo real pero para lenguajes de programación.

Hay objetos primitivos que nos permiten crear valores rapidamente en memoria.

Como:

  • Int
  • Float
  • str
  • bool

Estos objetos pueden usarse en expresiones para generar procesos mas complejos, como sumar numeros, unir textos etc.

Python es un lenguaje de alto nivel, de propósito general e interpretado

% es el operador que actua sobre enteros y regresa el reciduo de la division entre ambos.

El modulo % nos sirve para saber el residuo de una división, por ejemplo:

12%5 = 2

La operación es esto:
5x1 = 5 ✅ está dentro de 12
5x2 = 10 ✅ está dentro de 12
5x3 = 15 ❌ no está en 12.
Luego resta 12 -10 = 2

Así logré entenderlo yo

7%2
1

2**3
8

1+2
3

2-5
-3

2.0*3
6.0

6/4
1.5

6//2
3

ALTO NIVEL - Cercano al lenguaje natural BAJO NIVEL - Cercano al lenguaje máquina GENERAL DOMINIO ESPECÍFICO INTERPRETADO - Se traduce al ser entregado a la máquina COMPILADO -Se traduce antes de ser entregado a la máquina.

Increíble

print(“Hola mundo”)

type(my_int)
<class ‘int’>

type(my_float)
<class ‘float’>

type(my_bool)
<class ‘bool’>

type(My_none)
<class ‘NoneType’>

>>> 1 + 2
3
>>> print('Hola, mundo!')
Hola, mundo!
>>> isInt = 7
>>> isFloat = 1.7
>>> isBool = true
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'true' is not defined
>>> isBool = True
>>> isNome = none
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'none' is not defined
>>> isNome = None
>>> isNone = None
>>> type(isInt)
<class 'int'>
>>> type(isFloat)
<class 'float'>
>>> type(isBool)
<class 'bool'>
>>> type(isNone)
<class 'NoneType'>
>>> 5 + 7
12
>>> 3 - 5
-2
>>> 3.0 * 4
12.0
>>> 3.567 * 2.4
8.5608
>>> 8 // 4
2
>>> 9 / 3
3.0
>>> 8 / 4
2.0
>>> 7 % 3
1
>>> 3 ** 2
9

Entiendo por “elementos básicos de python” como a los “elementos básicos” de cualquier lenguaje de programación para escribir un algoritmo que entienda una computadora. Podría ser así?

Es importante usar la version 3.8 de python para seguir paso a paso los ejemplos del curos porque existe diferencia con la version 2.7. por ejemplo en la version 2.7 es indiferente usar la expresion 6 // 4 o 6 / 4 en ambos casos nos regresara un valor entero, en esta version de la 2.7 para pedirle un valor flotante al interprete debemos escribirlo de la siguiente forma float(6) / 4. pero en la version 3.8 si existe diferencia entre ambas expresiones ya que 6 // 4 nos regresara un resultado entero y la expresion 6 / 4 nos regresara un numero flotante.

😮

my_int = 1
my_float = 1.0
my_bool = False
my_none = None

type(my_int)
<class ‘int’>

type(my_float)
<class ‘float’>

type(my_bool)
<class ‘bool’>

type(my_none)
<class ‘NoneType’>

>>> my_int = 1
>>> my_float = 1.0
>>> my_bool = False
>>> my_none = None
>>>
>>> type(my_int)
<class 'int'>
>>> type(my_float)
<class 'float'>
>>> type(my_bool)
<class 'bool'>
>>> type(my_none)
<class 'NoneType'>

Lo importante es que nosotros sigamos con la sintaxis.

EXCELENTE PROFE
Print(‘Hola Mundo’)

my_int = 1

my_float= 1.0

my_bool= False

my_nione= None

type(my_int)
<class ‘int’>

type(my_float)
<class ‘float’>

type(my_bool)
<class ‘bool’>

type(my_nione)
<class ‘NoneType’>

El operador módulo tiene como función realizar la división entre los dos literales, pero en lugar de entregarte el resultado, entrega el resto de la división

print(’…’) Muestra texto o variables

El operador // es una división entre dos números, pero devuelve solo el entero, pero sin redondear. O mas bien retira todos los decimales al flotante resultante de la división.
En cambio el operador % es el modulo o residuo de la división entre dos números.

>>> my_int = 1
>>> my_double = 1.5
>>> my_string = 'hola'
>>> my_bool = False
>>> my_none = None
>>>
>>> type(my_int)
<class 'int'>
>>> type(my_double
... )
<class 'float'>
>>> type(my_string)
<class 'str'>
>>> type(my_bool)
<class 'bool'>
>>> type(my_none)
<class 'NoneType'>
>>>
>>> 1+2
3
>>> 2-5
-3
>>> 2.0*3
6.0
>>> 6//2
3
>>> 6//4
1
>>> 7%2
1
>>> 2**3
8

Objetos:
- Son la abstracción mas alta en los lenguajes de programación
- Son valores en memoria que podemos referenciar con variables
Tipos de objetos:
- Enteros
- Decimales
- Booleanos
- Cadenas de caracteres
Vectores

Modulo % devuelve el resto de una división entre dos números

Hola amigos.
Les voy a dejar mi pequeño resumen aqui.
Objetos:
** Enteros
Flotantes
Boolenos
Vectores**
Escalares
No escalares

my_int = 1
my_float = 1.0
my_bool = False
my_none = None

type(my_int)
<class ‘int’>

type(my_float)
<class ‘float’>

type(my_bool)
<class ‘bool’>

type(my_none)
<class ‘NoneType’>

En el siguiente enlace podemos ver mas en detalle, los operadores aritméticos en Python: Aquí
Ya que en mi caso, vi operadores nuevos, me parece regenial!!

Lenguaje de programación dinámico, interpretado y fácil de aprender
clasificado como:

  • Lenguaje de Alto nivel
  • Lenguaje general
  • Lenguaje Interpreatado

Creado por Guido van Rossum en 1991
Ampliamente utilizado en ciencia e ingeniería

En Python, nombres de variables pueden:

  • incluir letras, dígitos y guiones bajos
  • no puede comenzar con un dígito
  • son mayúsculas y minúsculas .

En matemática, la aritmética modular es un sistema aritmético para clases de equivalencia de números enteros llamadas clases de congruencia.

type(my_none)
class “Nonetype”

En matemática, la aritmética modular es un sistema aritmético para clases de equivalencia de números enteros llamadas clases de congruencia, esta fue introducida en 1801 por Carl Friedrich Gauss y puede ser construida matemáticamente mediante la relación de congruencia entre enteros, que es compatible con las operaciones en el anillo de enteros: suma y multiplicación.