APRENDER PROGRAMACIÓN con PYTHON , DATOS BÁSICOS DE PYTHON , PARA PRINCIPIANTES , Parte 3

Los tipos de datos

En cualquier lenguaje de programación de alto nivel se manejan tipos de datos. Los tipos de datos definen un conjunto de valores que tienen una serie de características y propiedades determinadas.

En Python, todo valor que pueda ser asignado a una variable tiene asociado un tipo de dato.

En Python todo es un objeto. Así que los tipos de datos serían  las propiedades  y las variables serían las instancias (objetos) de los tipos de datos.

En definitiva, un tipo de dato establece qué valores puede tomar una variable y qué operaciones se pueden realizar sobre la misma.

Datos básicos de Python

¿Qué tipos de datos trae consigo Python?

En Python podemos encontrar distintos tipos de datos con diferentes características y clasificaciones.posteriores.

Los tipos de datos básicos de Python son los booleanos, los numéricos (enteros, punto flotante y complejos) y las cadenas de caracteres.

Python también define otros tipos de datos, entre los que se encuentran:

  • Secuencias: Los tipos listtuple y range
  • Mapas: El tipo dict
  • Conjuntos: El tipo set
  • Iteradores
  • Clases
  • Instancias
  • Excepciones

A su vez, los tipos anteriores se pueden agrupar de diferente manera. Por ejemplo: el tipo cadena de caracteres es una secuencia inmutable; las listastuplas o diccionarios, entre otros, son contenedores y colecciones, etc. Pero esto no lo veremos aquí.

Comencemos por lo fácil revisando los tipos de datos básicos de Python.

Tipos numéricos

Python define tres tipos de datos numéricos básicos: enterosnúmeros de punto flotante (simularía el conjunto de los números reales, pero ya veremos que no es así del todo) y los números complejos.

Números enteros

El tipo de los números enteros es int. Este tipo de dato comprende el conjunto de todos los números enteros, pero como dicho conjunto es infinito, en Python el conjunto está limitado realmente por la capacidad de la memoria disponible.

No hay un límite de representación impuesto por el lenguaje.

Pero tranquilidad, que para el 99% de los programas que desarrolles tendrás suficiente con el subconjunto que puedes representar.

Un número de tipo int se crea a partir de un literal que represente un número entero o bien como resultado de una expresión o una llamada a una función.

Ejemplos:

También podemos representar los números enteros en formato binariooctal o hexadecimal.

Los números octales se crean anteponiendo 0o a una secuencia de dígitos octales (del 0 al 7).

Para crear un número entero en hexadecimal, hay que anteponer 0x a una secuencia de dígitos en hexadecimal (del 0 al 9 y de la A la F).

En cuanto a los números en binario, se antepone 0b a una secuencia de dígitos en binario (0 y 1).

Números de punto flotante

Los números de punto flotante representaban, más o menos, al conjunto de los números reales.

Abre un terminal y ejecuta el comando python3 para lanzar el intérprete de Python.

A continuación introduce la expresión 1.1 + 2.2 y mira cuál es el resultado.

Representación de los números de punto flotante

Al igual que ocurre con los números enteros, los números reales son infinitos y, por tanto, es imposible representar todo el conjunto de números reales con un ordenador.

Para representar el mayor número posible de los números reales con las limitaciones de memoria (tamaños de palabra de 32 y 64 bits), se adaptó la notación científica de representación de números reales al sistema binario (que es el sistema que se utiliza en programación para representar los datos e instrucciones).

En esta notación científica, los números se representan así:

Número Notación científica
101,1 1,011 * 102
0,032 3,2 * 10-2

El caso es que la suma de la representación en punto flotante en binario del número 1,1 y de la representación en punto flotante en binario del número 2,2, dan como resultado 3,3000000000000003

Pero hay más casos, como por ejemplo la representación del número 1/3. En algún momento, el ordenador tiene que truncar el número periódico resultante.

La explicación final es que los números de punto flotante se representan en el hardware del ordenador como fracciones de base 2 (binarias).

Y el problema está en que la mayoría de las fracciones decimales no se pueden representar de forma exacta como fracciones binarias porque tienen infinitos números decimales.

Una consecuencia es que, en general, los números decimales de punto flotante que usas en tus aplicaciones son una aproximación de los números binarios de punto flotante realmente almacenados en la máquina.

Números de Punto flotante en Python

Pues una vez vista esta simplificada introducción a los números de punto flotante, te diré que este tipo de datos en Python es float.

Puedes usar el tipo float sin problemas para representar cualquier número real (siempre teniendo en cuenta que es una aproximación lo más precisa posible). Por tanto para longitudes, pesos, frecuencias, …, en los que prácticamente es lo mismo 3,3 que 3,3000000000000003 el tipo float es el más apropiado.

Cuando un número float vaya a ser usado por una persona, en lugar de por el ordenador, puedes darle formato al número de la siguiente manera:

Al igual que los números enteros, un float se crea a partir de un literal, o bien como resultado de una expresión o una función.

Y para terminar esta sección, te adelanto que, si por cualquier motivo sí que necesitas una mayor precisión a la hora de trabajar con los números reales, Python tiene otros tipos de datos, como Decimal.

El tipo Decimal es ideal a la hora de trabajar, por ejemplo, con dinero o tipos de interés. Este tipo de dato trunca la parte decimal del número para ser más preciso, pero no es el objetivo de este tutorial hablar sobre el tipo de dato Decimal.

Números complejos

El último tipo de dato numérico básico que tiene Python es el de los números complejoscomplex.

Los números complejos tienen una parte real y otra imaginaria y cada una de ellas se representa como un float.

Para crear un número complejo, se sigue la siguiente estructura <parte_real>+<parte_imaginaria>j. Y se puede acceder a la parte real e imaginaria a través de los atributos real e imag:

Aritmética de los tipos numéricos

Con todos los tipos numéricos se pueden aplicar las operaciones de la aritmética: suma, resta, producto, división, …

En Python está permitido realizar una operación aritmética con números de distinto tipo. En este caso, el tipo numérico «más pequeño» se convierte al del tipo «más grande», de manera que el tipo del resultado siempre es el del tipo mayor.

Entendemos que el tipo int es menor que el tipo float que a su vez es menor que el tipo complex.

Por tanto, es posible, por ejemplo, sumar un int y un float:

Tipo booleano

En Python la clase que representa los valores booleanos es bool. Esta clase solo se puede instanciar con dos valores/objetos: True para representar verdadero y False para representar falso.

Una particularidad del lenguaje es que cualquier objeto puede ser usado en un contexto donde se requiera comprobar si algo es verdadero o falso. Por tanto, cualquier objeto se puede usar en la condición de un if o un while (son estructuras de control que veremos en tutoriales posteriores) o como operando de una operación booleana.

Por defecto, cualquier objeto es considerado como verdadero con dos excepciones:

  • Que implemente el método __bool__() y este devuelva False.
  • Que impleménte el método __len__() y este devuelva 0.

Además, los siguientes objetos/instancias también son consideradas falsas:

  • None
  • False
  • El valor cero de cualquier tipo numérico: 00.00j, …
  • Secuencias y colecciones vacías (veremos estos tipos en otros tutoriales): ''()[]{}set()range(0)

Cadena de caracteres

Otro tipo básico de Python, e imprescindible, son las secuencias o cadenas de caracteres. Este tipo es conocido como string aunque su clase verdadera es str.

Formalmente, un string es una secuencia inmutable de caracteres en formato Unicode.

Para crear un string, simplemente tienes que encerrar entre comillas simples '' o dobles "" una secuencia de caracteres.

Se puede usar indistintamente comillas simples o dobles, con una particularidad. Si en la cadena de caracteres se necesita usar una comilla simple, tienes dos opciones: usar comillas dobles para encerrar el string, o bien, usar comillas simples pero anteponer el carácter \ a la comilla simple del interior de la cadena. El caso contrario es similar.

Veamos todo esto con un ejemplo:

A diferencia de otros lenguajes, en Python no existe el tipo «carácter». No obstante, se puede simular con un string de un solo carácter:

Revisa este tutorial si quieres conocer más sobre la clase str de Python.

Otros tipos

Hasta aquí hemos repasado los tipos de datos básicos de Python, sin embargo, el lenguaje ofrece muchos tipos más. Te hago aquí un avance de los más importantes, aunque los veremos en detalle en otros tutoriales.

Además de los tipos básicos, otros tipos fundamentales de Python son las secuencias (list y tuple), los conjuntos (set) y los mapas (dict).

Todos ellos son tipos compuestos y se utilizan para agrupar juntos varios valores.

  • Las listas son secuencias mutables de valores.
  • Las tuplas son secuencias inmutables de valores.
  • Los conjuntos se utilizan para representar conjuntos únicos de elementos, es decir, en un conjunto no pueden existir dos objetos iguales.
  • Los diccionarios son tipos especiales de contenedores en los que se puede acceder a sus elementos a partir de una clave única.

El tipo de una variable

Ahora te voy a presentar dos funciones para que puedas jugar con todo lo que hemos visto en este tutorial. Son type() e isinstance():

  • type() recibe como parámetro un objeto y te devuelve el tipo del mismo.
  • isinstance() recibe dos parámetros: un objeto y un tipo. Devuelve True si el objeto es del tipo que se pasa como parámetro y False en caso contrario.

Conversión de tipos

Imagina que tienes una variable edad de tipo string cuyo valor es '25'.

Se podría decir que edad, aunque realmente es una cadena de caracteres, contiene un número. Sin embargo, si intentas sumar 10 a edad, el intérprete te dará un error porque edad es de tipo str y 10 un tipo numérico.

¿Cómo puedo tratar la variable edad como un número? Convirtiéndola a un tipo numérico, por ejemplo, al tipo int.Para ello, Python ofrece las siguientes funciones:

  • str(): Devuelve la representación en cadena de caracteres del objeto que se pasa como parámetro.
  • int(): Devuelve un int a partir de un número o secuencia de caracteres.
  • float(): Devuelve un float a partir de un número o secuencia de caracteres.
  • complex(): Devuelve un complex a partir de un número o secuencia de caracteres.

Si a las funciones anteriores se les pasa como parámetro un valor inválido, el intérprete mostrará un error.



El significado de automatización hace referencia a los trabajos realizados por un operario humano y que en la Industria 4.0 pasan a ser automátizados y sustituidos por una máquina automática, un software informático o por un robot.



   PLC 
Los PLC (Controlador lógico programable) o autómatas programables son dispositivos electrónicos que permiten programar una lógica para controlar todo tipo de máquinas y procesos industriales.


    TIA PORTAL 

TIA Portal es un software que integra todos los componentes de las máquinas para controlar procedimientos y operaciones. Al ser una aplicación es modular, es posible añadir nuevas funcionalidades que se adapten a las necesidades de la aplicación.

Es ideal para hardware que utilizan el S7-1200 y S7-1500. Es una realidad que los nuevos paneles funcionan mejor con este programa. Además, se obtiene una fácil migración de los proyectos con sistemas ya existentes.

M  a  s  . . .


El entorno de desarrollo integrado Sysmac Studio le permite aumentar su productividad, ya que se trata del primer entorno de desarrollo integrado (IDE) del sector que integra lógica, motion, robótica, HMI, visión, detección, seguridad y simulación en 3D en una única plataforma.


 PYTHON 
Es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible. Y define este como un lenguaje multiparadigma, debido a que soporta orientación a objetos, programación imperativa y en menor medida programación funcional. Es interpretado de tipado dinámico y multiplataforma.


 

Existen dos vertientes de normativa relacionadas. La que afecta a los equipos empleados en zonas ATEX y la que afecta a la determinación de zonas ATEX en las zonas de trabajo.

Analizaremos primero nuestra perspectiva, la del fabricante y distribuidor. Para la fabricación y distribución de equipos ATEX aplica la Directiva de productos ATEX 2014/34/EU. Esta Directiva europea es posteriormente traspuesta a la normativa local de cada país miembro dentro de la UE.



Los robots móviles AGV han sido especialmente diseñados para mejorar el rendimiento de los procesos en el transporte y distribución de materiales en las fábricas y almacenes, y pueden trabajar tanto en interiores como en exteriores.


La robótica industrial y la automatización son los pilares que han hecho posible la consolidación de la Industria 4.0, además de traer consigo numerosos beneficios para la productividad y eficiencia de los recursos de producción.
M  a  s  . . .


Los grupos hidráulicos, en hidromecánica, son conjuntos de componentes hidráulicos que permiten alimentar una red o sistema hidráulico con aceite y a un caudal determinado.

M  a  s  . . .



Neumática

Se puede definir la neumática, como el conjunto de tecnologías que usan un gas como medio para transmitir energía.

El proceso es sencillo y a la vez tiene una cierta complicación debido a los elementos requeridos para su aplicación. En el proceso se aprovecha la capacidad de compresión de los gases para acumular energía, al aumentar la presión de los mismos en el interior de recipientes o circuitos.

M  a  s  . . .



 

Software de programación GX Developer FX

El potente software basado en Windows™ es sencillo y fácil de instalar en PC y admite los PLC serie FX de Mitsubishi. El software es fácil de usar con una interfaz intuitiva y una curva de aprendizaje corta. Permite programar sus propios bloques de funciones y tiene una amplia gama de utilidades disponibles para configuración. También puede probar todas las funciones clave de sus programas antes de aplicarlas con el modo de simulador de fuera de línea GX.

M  a  s  . . .



TIA PORTAL ,Parte 2 , Lenguaje Estructurado SCL _1

SCL es un lenguaje de texto estructurado cuya sintaxis es similar a otros lenguajes de alto nivel y propósito general como el Pascal o el C , además , es un  leguaje de control basado en texto ,se utiliza para la  ejecución de cálculos complejos , algoritmos y operaciones con datos .

Se corresponde con la norma IEC 61101-3(ST)

M  a  s  . . . 



Esquemas Planos Eléctricos

Un plano eléctrico es la representación de los diferentes circuitos que componen y definen las características de una instalación eléctrica y donde se detallan las particularidades de los materiales y dispositivos existentes.

La instalación eléctrica se puede representar sobre uno o varios planos diferentes.

Para representar estos planos pueden utilizarse diferentes tipos de esquemas eléctricos normalizados y estandarizados, entendiendo como esquema eléctrico el conjunto de conexiones y relaciones eléctricas coherentes mediante símbolos de los componentes de un sistema eléctrico.

M  a  s  . . .



Eplan

EPLAN Electric P8 es un sistema de ingeniería consistente, integrado y rápido que se utiliza para planificar y diseñar la ingeniería eléctrica de máquinas y sistemas de planta.

El software es compatible con una amplia variedad de métodos de ingeniería: desde la creación manual hasta una planificación estandarizada basada en plantillas.

M  a  s  . . .



Evitar explosiones eficazmente: introducción a la

protección ATEX

Existen dos vertientes de normativa relacionadas. La que afecta a los equipos empleados en zonas ATEX y la que afecta a la determinación de zonas ATEX en las zonas de trabajo.

Analizaremos primero nuestra perspectiva, la del fabricante y distribuidor. Para la fabricación y distribución de equipos ATEX aplica la Directiva de productos ATEX 2014/34/EU. Esta Directiva europea es posteriormente traspuesta a la normativa local de cada país miembro dentro de la UE.

M  a  s  . . .



VISIÓN ESTRATEGICA ENERGÉTICA

  • En el corto plazo, el nuevo plan estratégico 2021-2023 aumenta las inversiones un 25% hasta 7.900 millones para acelerar la descarbonización y la digitalización.

Evitar explosiones eficazmente: introducción a la protección ATEX

M  a  s  . . .



VISIÓN ARTIFICIAL

La visión artificial ayuda a resolver tareas industriales completas en forma confiable y consistente

M  a  s  . . .



ENERGY EFFICIENCY IN INDUSTRY

La industria, sector intensivo en el consumo de energía, ha sido uno de los sectores en el que más han incidido las actuaciones orientadas a mejorar la eficiencia energética.

M  a  s  . . .



TECNOLOGÍAS

El concepto de tecnología puede ser bastante amplio, ya que ha estado presente en la humanidad desde la invención de utensilios, herramientas y técnicas.

M  a  s  . . .



Meet Crossrail’s giant tunnelling machines

M  a  s  . . .



 

Python desde cero

LESSON TWO

Variables en Python

Las variables son uno de los dos componentes básicos de cualquier programa.

En su esencia, un programa está compuesto por datos e instrucciones que manipulan esos datos. Normalmente, los datos se almacenan en memoria (memoria RAM) para que podamos acceder a ellos.

Entonces, ¿qué es una variable? Una variable es una forma de identificar, de forma sencilla, un dato que se encuentra almacenado en la memoria del ordenador. Imagina que una variable es un contenedor en el que se almacena un dato, el cuál, puede cambiar durante el flujo del programa. Una variable nos permite acceder fácilmente a dicho dato para ser manipulado y transformado.

M  a  s  . . .



LA EFICIENCIA ENERGÉTICA puede significar la

diferencia entre rentabilidad y pérdidas económicas.

Producción más limpia :

Se utiliza  para acelerar la aplicación de estrategias ambientales preventivas a procesos, productos y servicios, para aumentar la eficiencia y reducir los riesgos para los seres humanos y el medio ambiente.

Aborda,

a) Eficiencia productiva: optimización del uso productivo de los recursos naturales (materiales, energía y agua);

M  a  s  . . .



LA AUTOMATIZACIÓN Y LA EFICIENCIA ENERGÉTICA ,

es la diferencia entre ahorro y perdidas económicas.

Los conceptos de automatización eficaces están basados en componentes multifuncionales sin las limitaciones de rendimiento causadas por los procesadores, la memoria o la tecnología de la comunicación.

Algunos conceptos como el funcionamiento determinístico en multitarea, tiempos de reacción mínimos o un concepto de software completo son elementos básicos en el ahorro de energía en los servo-accionamientos.

M  a  s  . . .



APRENDER PROGRAMACIÓN con PYTHON , DATOS

BÁSICOS DE PYTHON , PARA PRINCIPIANTES , Parte 3

Los tipos de datos

En cualquier lenguaje de programación de alto nivel se manejan tipos de datos. Los tipos de datos definen un conjunto de valores que tienen una serie de características y propiedades determinadas.

En Python, todo valor que pueda ser asignado a una variable tiene asociado un tipo de dato.

En Python todo es un objeto. Así que los tipos de datos serían  las propiedades  y las variables serían las instancias (objetos) de los tipos de datos.

M  a  s  . . . 



Evitar explosiones eficazmente: introducción a la protección ATEX

Últimas noticias