¿Qué son los lenguajes de programación de bajo y alto nivel?
Para comprender mejor los lenguajes de programación, es útil categorizarlos en dos grandes grupos: los de alto nivel y los de bajo nivel. Los lenguajes de alto nivel, como Python, están diseñados para ser más comprensibles para los humanos. Estos lenguajes se asemejan al idioma natural que utilizamos a diario, haciendo que sea más fácil para los desarrolladores dar instrucciones a la computadora. Por otro lado, los lenguajes de bajo nivel están más optimizados para la comprensión de las máquinas, acercándose más a la representación binaria en la que operan, con 0s y 1s.
¿Cuál es la diferencia entre lenguajes generales y específicos de dominio?
Otra distinción en la programación es entre lenguajes generales y específicos de dominio. Un lenguaje general es aquel que contiene todos los elementos básicos necesarios para implementar cualquier tipo de algoritmo. Python es un excelente ejemplo de un lenguaje general, ya que permite desarrollar una amplia gama de aplicaciones. En contraste, los lenguajes específicos de dominio están diseñados para solucionar problemas muy concretos y son utilizados en campos específicos.
¿Cómo funcionan los lenguajes interpretados y compilados?
Los lenguajes interpretados y compilados también representan un par de categorías clave. En los lenguajes interpretados, como Python, el código se traduce al lenguaje de máquina instrucción por instrucción mientras se ejecuta el programa, permitiendo una mayor flexibilidad. Sin embargo, en los lenguajes compilados, todo el código fuente se traduce en lenguaje máquina antes de que se ejecute un programa, lo que suele mejorar la eficiencia en la ejecución.
¿Qué son los literales y operadores en Python?
Dentro de Python, los literales son la forma más directa de inicializar objetos en la memoria. Se anotan directamente en el código sin necesidad de pasos intermedios. Un literal puede ser un número entero, un string, un flotante o un booleano, como vemos en los siguientes ejemplos:
1 es un entero.
'cadena' es un string.
2.0 es un flotante.
True o False son booleanos.
Estos literales se pueden combinar usando operadores como suma, multiplicación, división, entre otros. Por ejemplo, 1 + 2 es una suma simple que involucra literales enteros y operadores de suma.
¿Cómo se manejan los errores de sintaxis y semánticos?
Es probable que te encuentres con errores mientras programas. Comprender los tipos de errores comunes te ayudará a depurarlos más rápidamente:
Errores de sintaxis: Ocurren cuando no seguimos las reglas gramaticales del lenguaje. Por ejemplo, 1 3.0 generará un error de sintaxis, ya que carece de un operador entre los números.
Errores semánticos: A pesar de estar bien escrito desde un punto de vista sintáctico, el código puede no tener sentido lógico. Por ejemplo, dividir un entero por un string, 5 / 'Platzi', generará un error semántico ya que esta operación carece de sentido en el contexto del lenguaje.
¿Qué son los objetos, expresiones y tipos numéricos en programación?
En Python, los objetos representan la forma en que modelamos el mundo real dentro de nuestros programas. Todo, desde un número hasta un dispositivo físico, puede considerarse un objeto:
Objetos: Son abstracciones de elementos del mundo real. Un objeto puede ser tan simple como un número o tan complejo como un humano con múltiples propiedades.
Expresiones: Al operar con objetos, obtenemos resultados que se conocen como expresiones. Por ejemplo, 2 + 3 es una expresión que devuelve 5.
Tipos numéricos: Incluyen enteros, flotantes y booleanos. Cada uno tiene sus propias características y usos dentro del código.
¿Cómo se usa la función type() para identificar tipos de objetos en Python?
Python proporciona la función type() para determinar la clase o tipo de un objeto. Esto es particularmente útil al depurar y garantizar que los datos sean del tipo esperado.
Les recomiendo que prueben en la consola diferentes literales y vean el tipo resultante.
¿Por qué es importante experimentar con Python?
La práctica constante de la escritura, análisis y ejecución de códigos en Python afianza los conceptos aprendidos. Les sugiero experimentar en consola con operaciones como 1 + 2 o 100 ** 2, y compartir sus resultados. Esta práctica ayuda a fortalecer el pensamiento computacional y mejora la comprensión de los procesos internos del lenguaje. ¡Sigan adelante y continúen explorando el fascinante mundo de Python!
Muy buen aporte compañero, gracias por compartirlo!!!
Por si alguien tiene duda para que sirve el "//" y el "%" el primero hace que el numero se redondee a un entero y no deja decimal y el segundo que es el modular muestra el sobrante de la división como se ve con el 7 % 2 que caben 3 y sobra 1 para eso sirve el modular (%).
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.
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
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.
Ufff sufrí un montón para abrir algo tan sencillo. Solo denle windows + r y escriban allí: cmd
Les va a salir una cajita negra (la consola). Allí escriban solamente "
python a secas, sin el 3.7 o 3.8. A mí me funcionó así, porque cuando ponía: "python 3.8" se salía un mensaje de error.
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 -
Exacto, lo que hace system es tomar los comandos de consola del sistema operativo que estés utilizando. Windows usa cls y linux usa clear, si no me equivoco Mac usa los mismos comandos o parecidos a Linux.
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 :P
Es perfectamente posible bro, incluso lo puedes hacer con un block de notas si tu quieres, siempre y cuando lo guardes con la extension ,py, en lo personal, uno de mis preferidos es Sublime Text
¿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", (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
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. 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.
¿Qué sucede cuando sumamos True + True o True + False?
>>>True+True2>>>True+False1```
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 GeorgeBoole.
Les dejo mis apuntes en
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+23>>>13.0# error sintáctico File "<stdin>", line 113.0^SyntaxError: invalid syntax
>>>5/'Texto'# error semántico estáticoTraceback (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 enunciadoHello, 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ón4# Obtenemos este valor
En Python podemos ver los tipos de datos que contienen nuestros objetos (variables), para esto usamos la función Type.
eso pasa al ingresar a la informática, al principio para todo buscamos vídeos aunque sea lo mas sencillo y los que ya saben asumen que no es necesario mostrar como acceder a las herramientas, pero igual
en windows es tan facil como hacer click derecho sobre el icono de windows en la barra de tareas y seleccionar "power Shel"
y en linux es mas facil solo precionando Ctrl + Alt + T accedes a una consola
y en mac:
1.-Haz clic en el icono "Finder"(las carpetas) situado en el Dock, luego selecciona "Aplicaciones > Utilidades"2.-Finalmente dale doble clic al icono "Terminal"
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.
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=1string="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.
Para saber más aquí está la documentación, donde puede apreciarse la sintáxis y la función que resuelve dicha operación.
Operadores Python
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.
La linea de codigo
system('cls')
Solo aplica si tienes windows. en caso de tener linux o mac debes usar la linea: