{"id":88,"date":"2024-09-21T18:45:22","date_gmt":"2024-09-21T16:45:22","guid":{"rendered":"https:\/\/cienciaytecnology.com\/wordpress\/?p=88"},"modified":"2024-11-03T19:44:21","modified_gmt":"2024-11-03T18:44:21","slug":"python","status":"publish","type":"post","link":"https:\/\/cienciaytecnology.com\/wordpress\/python\/","title":{"rendered":"Python"},"content":{"rendered":"\n<pre class=\"wp-block-preformatted\">Python:\n------\n\n1. Como ejecutar python en linux:\n\n- Abrir una terminal\n- Verificar la instalaci\u00f3n de python: python3 --version\n- Ejecutar un script de python: \n\t* Navega hasta el archivo: cd \/ruta\/del\/archivo\n\t* Ejecuta el archivo con el comando python3: python3 mi_archivo.py\n- Hacer el script ejecutable (opcional): Si deseas ejecutar el script sin el comando \n  python3 primero debes darle permisos de ejecucion:\n\tchmod +x mi_archivo.py \n\tY luego lo ejecutas directamente: .\/mi_archivo.py\n\n2. Tipos de variables:\n---------------------\n\n- Numeros enteros: edad = 25\n- Flotantes (float): precio = 19.99 \n- Cadenas (str) secuencia de caracteres: nombre = \"Juan\"\n- Booleanos (bool), valores de verdad ( True o False): es_estudiante = True\n- Listas (list), coleciones ordenadas y mutables de elementos:\n\tfrutas = [\"manzana\", \"banana\", \"cereza\"]\n- Tuplas (tuple), coleciones ordenadas e inmutables de elementos:\n\tcoordenadas = (10, 20)\n- Diccionarios (dict), colecciones de pares clave-valor:\n\testudiante = { \"nombre\": \"Ana\", \"edad\": 22}\n- Conjuntos (set), colecciones desordenadas de elementos unicos:\n\tnumeros_unicos = {1,2,3,4,5}\n\n3. Operadores: \n-------------\n\n- Aritm\u00e9ticos: +, -, *, \/, %, **\n- Relacionales: &gt;, &lt;, ==, &gt;=, &lt;=, != \n- L\u00f3gicos: and, or, not\n- Pertenencia: in, not in\n- Identidad: is, is not\n\n4. Estructuras de control:\n-------------------------\n\nLas estructuras de control en Python son fundamentales para dirigir el flujo de ejecuci\u00f3n de un programa. Aqu\u00ed tienes un resumen de las principales estructuras de control:\n\n- Condicionales:\n\nif, elif, else: Permiten ejecutar bloques de c\u00f3digo basados en condiciones espec\u00edficas.\nPython\n\nif condition:\n    # c\u00f3digo si la condici\u00f3n es verdadera\nelif another_condition:\n    # c\u00f3digo si la otra condici\u00f3n es verdadera\nelse:\n    # c\u00f3digo si ninguna condici\u00f3n es verdadera \n\n- Bucles:\n\nfor: Se utiliza para iterar sobre una secuencia (como una lista, tupla, diccionario, conjunto o cadena).\nPython\n\nfor element in sequence:\n    # c\u00f3digo a ejecutar en cada iteraci\u00f3n\n\nwhile: Repite un bloque de c\u00f3digo mientras una condici\u00f3n sea verdadera.\n\nwhile condition:\n    # c\u00f3digo a ejecutar mientras la condici\u00f3n sea verdadera\n\nControl de bucles:\nbreak: Termina el bucle prematuramente.\ncontinue: Salta a la siguiente iteraci\u00f3n del bucle.\npass: No hace nada, se usa como un marcador de posici\u00f3n.\n\n5. Funciones:\n------------\n\ndef nombre_funcion(parametros):\n\t# bloque de codigo\n\treturn valor # opcional\n\n- Ejemplo:\n\ndef saludar():\n    print(\"\u00a1Hola, mundo!\")\n\nsaludar()  # Llama a la funci\u00f3n y muestra \"\u00a1Hola, mundo!\"\n\n\n- Par\u00e1metros y Valores de Retorno\n\nLas funciones pueden aceptar par\u00e1metros y devolver valores. Aqu\u00ed tienes un ejemplo con\npar\u00e1metros y un valor de retorno:\n\ndef sumar(a, b):\n    return a + b\n\nresultado = sumar(3, 5)\nprint(resultado)  # Muestra 8\n\n- Par\u00e1metros por Defecto\n\nPuedes definir valores por defecto para los par\u00e1metros. Si no se proporciona un argumento,\nse usar\u00e1 el valor por defecto.\n\ndef saludar(nombre=\"Mundo\"):\n    print(f\"\u00a1Hola, {nombre}!\")\n\nsaludar()  # Muestra \"\u00a1Hola, Mundo!\"\nsaludar(\"Ada\")  # Muestra \"\u00a1Hola, Ada!\"\n\nPar\u00e1metros con Nombre\nPuedes pasar argumentos utilizando el nombre del par\u00e1metro, lo que permite mayor \nflexibilidad en el orden de los argumentos.\n\ndef presentar(nombre, edad):\n    print(f\"Me llamo {nombre} y tengo {edad} a\u00f1os.\")\n\npresentar(edad=30, nombre=\"Juan\")  # Muestra \"Me llamo Juan y tengo 30 a\u00f1os.\"\n\nFunciones An\u00f3nimas (Lambdas)\nPython tambi\u00e9n permite definir funciones an\u00f3nimas usando la palabra clave lambda. Estas \nfunciones son \u00fatiles para operaciones simples y r\u00e1pidas.\n\nmultiplicar = lambda x, y: x * y\nprint(multiplicar(3, 4))  # Muestra 12\n\n6. Manejo de Errores:\n--------------------\n\n- Errores:\n----------\nLos errores detienen la ejecuci\u00f3n del programa y tienen varias causas. Para poder estudiarlos mejor vamos a provocar algunos intencionadamente.\n\nErrores de sintaxis\nIdentificados con el c\u00f3digo SyntaxError, son los que podemos apreciar repasando el c\u00f3digo, por ejemplo al dejarnos de cerrar un par\u00e9ntesis:\n\n\nprint(\"Hola\"\n\nFile \"&lt;ipython-input-1-8bc9f5174855&gt;\", line 1\n    print(\"Hola\"\n                ^\nSyntaxError: unexpected EOF while parsing\nErrores de nombre\nSe producen cuando el sistema interpreta que debe ejecutar alguna funci\u00f3n, m\u00e9todo... pero no lo encuentra definido. Devuelven el c\u00f3digo NameError:\n\n\npint(\"Hola\")\n\n&lt;ipython-input-2-155163d628c2&gt; in &lt;module&gt;()\n----&gt; 1 pint(\"Hola\")\n\nNameError: name 'pint' is not defined\nLa mayor\u00eda de errores sint\u00e1cticos y de nombre los identifican los editores de c\u00f3digo antes de la ejecuci\u00f3n, pero existen otros tipos que pasan m\u00e1s desapercibidos.\n\nErrores sem\u00e1nticos\nEstos errores son muy dif\u00edciles de identificar porque van ligados al sentido del funcionamiento y dependen de la situaci\u00f3n. Algunas veces pueden ocurrir y otras no.\n\nLa mejor forma de prevenirlos es programando mucho y aprendiendo de tus propios fallos, la experiencia es la clave. Veamos un par de ejemplos:\n\nEjemplo pop() con lista vac\u00eda\n\nSi intentamos sacar un elemento de una lista vac\u00eda, algo que no tiene mucho sentido, el programa dar\u00e1 fallo de tipo IndexError. Esta situaci\u00f3n ocurre s\u00f3lo durante la ejecuci\u00f3n del programa, por lo que los editores no lo detectar\u00e1n:\n\n\nl = []\nl.pop()\n\n&lt;ipython-input-6-9e6f3717293a&gt; in &lt;module&gt;()\n----&gt; 1 l.pop()\n\nIndexError: pop from empty list\nPara prevenir el error deber\u00edamos comprobar que una lista tenga como m\u00ednimo un elemento antes de intentar sacarlo, algo factible utilizando la funci\u00f3n len():\n\n\nl = []\n\nif len(l) &gt; 0:\n    l.pop()\nEjemplo lectura de cadena y operaci\u00f3n sin conversi\u00f3n a n\u00famero\n\nCuando leemos un valor con la funci\u00f3n input(), \u00e9ste siempre se obtendr\u00e1 como una cadena de caracteres. Si intentamos operarlo directamente con otros n\u00fameros tendremos un fallo TypeError que tampoco detectan los editores de c\u00f3digo:\n\n\nn = input(\"Introduce un n\u00famero: \")\n\nprint(\"{}\/{} = {}\".format(n,m,n\/m))\n\nIntroduce un n\u00famero: 4\n\n---------------------------------------------------------------------------\nTypeError                                 Traceback (most recent call last)\n&lt;ipython-input-12-85bb893ab3e3&gt; in &lt;module&gt;()\n----&gt; 1 print(\"{}\/{} = {}\".format(n,m,n\/m))\n\nTypeError: unsupported operand type(s) for \/: 'str' and 'int'\nComo ya sabemos este error se puede prevenir transformando la cadena a entero o flotante:\n\n\nn = float(input(\"Introduce un n\u00famero: \"))\nm = 4\nprint(\"{}\/{} = {}\".format(n,m,n\/m))\n\nIntroduce un n\u00famero: 10\n10.0\/4 = 2.5\nSin embargo no siempre se puede prevenir, como cuando se introduce una cadena que no es un n\u00famero:\n\n\nn = float(input(\"Introduce un n\u00famero: \"))\nm = 4\nprint(\"{}\/{} = {}\".format(n,m,n\/m))\n\nIntroduce un n\u00famero: aaa\n\n---------------------------------------------------------------------------\nValueError                                Traceback (most recent call last)\n&lt;ipython-input-14-c0e7fd4a26a9&gt; in &lt;module&gt;()\n----&gt; 1 n = float(input(\"Introduce un n\u00famero: \"))\n    2 m = 4\n    3 print(\"{}\/{} = {}\".format(n,m,n\/m))\n\nValueError: could not convert string to float: 'aaa'\nComo pod\u00e9is suponer, es dif\u00edcil prevenir fallos que ni siquiera nos hab\u00edamos planteado que pod\u00edan existir. Por suerte para esas situaciones existen las excepciones.\n\n\n- Excepciones:\n-------------\n\nLas excepciones son bloques de c\u00f3digo que nos permiten continuar con la ejecuci\u00f3n de un programa pese a que ocurra un error.\n\nSiguiendo con el ejemplo de la lecci\u00f3n anterior, ten\u00edamos el caso en que le\u00edamos un n\u00famero por teclado, pero el usuario no introduc\u00eda un n\u00famero:\n\n\nn = float(input(\"Introduce un n\u00famero: \"))\nm = 4\nprint(\"{}\/{} = {}\".format(n,m,n\/m))\n\nIntroduce un n\u00famero: aaa\n\n---------------------------------------------------------------------------\nValueError                                Traceback (most recent call last)\n&lt;ipython-input-14-c0e7fd4a26a9&gt; in &lt;module&gt;()\n----&gt; 1 n = float(input(\"Introduce un n\u00famero: \"))\n    2 m = 4\n    3 print(\"{}\/{} = {}\".format(n,m,n\/m))\n\nValueError: could not convert string to float: 'aaa'\nBloques try - except\nPara prevenir el fallo debemos poner el c\u00f3digo propenso a errores en un bloque try y luego encadenar un bloque except para tratar la situaci\u00f3n excepcional mostrando que ha ocurrido un fallo:\n\n\ntry:\n    n = float(input(\"Introduce un n\u00famero: \"))\n    m = 4\n    print(\"{}\/{} = {}\".format(n,m,n\/m))\nexcept:\n    print(\"Ha ocurrido un error, introduce bien el n\u00famero\")\n\nIntroduce un n\u00famero: aaa\nHa ocurrido un error, introduce bien el n\u00famero\nComo vemos esta forma nos permite controlar situaciones excepcionales que generalmente dar\u00edan error y en su lugar mostrar un mensaje o ejecutar una pieza de c\u00f3digo alternativo.\n\nPodemos aprovechar las excepciones para forzar al usuario a introducir un n\u00famero haciendo uso de un bucle while, repitiendo la lectura por teclado hasta que lo haga bien y entonces romper el bucle con un break:\n\n\nwhile(True):\n    try:\n        n = float(input(\"Introduce un n\u00famero: \"))\n        m = 4\n        print(\"{}\/{} = {}\".format(n,m,n\/m))\n        break  # Importante romper la iteraci\u00f3n si todo ha salido bien\n    except:\n        print(\"Ha ocurrido un error, introduce bien el n\u00famero\")\n\nIntroduce un n\u00famero: aaa\nHa ocurrido un error, introduce bien el n\u00famero\nIntroduce un n\u00famero: sdsdsd\nHa ocurrido un error, introduce bien el n\u00famero\nIntroduce un n\u00famero: sdsdsd\nHa ocurrido un error, introduce bien el n\u00famero\nIntroduce un n\u00famero: sdsd\nHa ocurrido un error, introduce bien el n\u00famero\nIntroduce un n\u00famero: 10\n10.0\/4 = 2.5\nBloque else\nEs posible encadenar un bloque else despu\u00e9s del except para comprobar el caso en que todo funcione correctamente (no se ejecuta la excepci\u00f3n).\n\nEl bloque else es un buen momento para romper la iteraci\u00f3n con break si todo funciona correctamente:\n\n\nwhile(True):\n    try:\n        n = float(input(\"Introduce un n\u00famero: \"))\n        m = 4\n        print(\"{}\/{} = {}\".format(n,m,n\/m))\n    except:\n        print(\"Ha ocurrido un error, introduce bien el n\u00famero\")\n    else:\n        print(\"Todo ha funcionado correctamente\")\n        break  # Importante romper la iteraci\u00f3n si todo ha salido bien\n\nIntroduce un n\u00famero: 10\n10.0\/4 = 2.5\nTodo ha funcionado correctamente\nBloque finally\nPor \u00faltimo es posible utilizar un bloque finally que se ejecute al final del c\u00f3digo, ocurra o no ocurra un error:\n\n\nwhile(True):\n    try:\n        n = float(input(\"Introduce un n\u00famero: \"))\n        m = 4\n        print(\"{}\/{} = {}\".format(n,m,n\/m))\n    except:\n        print(\"Ha ocurrido un error, introduce bien el n\u00famero\")\n    else:\n        print(\"Todo ha funcionado correctamente\")\n        break  # Importante romper la iteraci\u00f3n si todo ha salido bien\n    finally:\n        print(\"Fin de la iteraci\u00f3n\") # Siempre se ejecuta\n\nIntroduce un n\u00famero: aaa\nHa ocurrido un error, introduce bien el n\u00famero\nFin de la iteraci\u00f3n\nIntroduce un n\u00famero: 10\n10.0\/4 = 2.5\nTodo ha funcionado correctamente\nFin de la iteraci\u00f3n\n\n- Excepciones m\u00faltiples:\n-----------------------\nEn una misma pieza de c\u00f3digo pueden ocurrir muchos errores distintos y quiz\u00e1 nos interese actuar de forma diferente en cada caso.\n\nPara esas situaciones algo que podemos hacer es asignar una excepci\u00f3n a una variable.\n\nDe esta forma es posible analizar el tipo de error que sucede gracias a su identificador:\n\n\ntry:\n    n = input(\"Introduce un n\u00famero: \")  # no transformamos a n\u00famero\n    5\/n\nexcept Exception as e:  # guardamos la excepci\u00f3n como una variable e\n    print(\"Ha ocurrido un error =&gt;\", type(e).__name__)\n\nIntroduce un n\u00famero: 10\nHa ocurrido un error =&gt;  TypeError\nCada error tiene un identificador \u00fanico que curiosamente se corresponde con su tipo de dato. Aprovech\u00e1ndonos de eso podemos mostrar la clase del error utilizando la sintaxis:\n\n\nprint( type(e) )\n\n&lt;class 'TypeError'&gt;\nEs similar a conseguir el tipo (o clase) de cualquier otra variable o valor literal:\n\n\nprint(type(1))\nprint(type(3.14))\nprint(type([]))\nprint(type(()))\nprint(type({}))\n\n&lt;class 'int'&gt;\n&lt;class 'float'&gt;\n&lt;class 'list'&gt;\n&lt;class 'tuple'&gt;\n&lt;class 'dict'&gt;\nComo vemos siempre nos indica eso de \"class\" delante. Eso es porque en Python todo son clases, pero hablaremos de este concepto m\u00e1s adelante. Lo importante ahora es que podemos mostrar solo el nombre del tipo de dato (la clase) consultando su propiedas especial name de la siguiente forma:\n\n\nprint( type(e).__name__)\nprint(type(1).__name__)\nprint(type(3.14).__name__)\nprint(type([]).__name__)\nprint(type(()).__name__)\nprint(type({}).__name__)\n\nTypeError\nint\nfloat\nlist\ntuple\ndict\nGracias a los identificadores de errores podemos crear m\u00faltiples comprobaciones, siempre que dejemos en \u00faltimo lugar la excepci\u00f3n por defecto Excepcion que engloba cualquier tipo de error (si la pusi\u00e9ramos al principio las demas excepciones nunca se ejecutar\u00edan):\n\n\ntry:\n    n = float(input(\"Introduce un n\u00famero divisor: \"))\n    5\/n\nexcept TypeError:\n    print(\"No se puede dividir el n\u00famero entre una cadena\")\nexcept ValueError:\n    print(\"Debes introducir una cadena que sea un n\u00famero\")\nexcept ZeroDivisionError:\n    print(\"No se puede dividir por cero, prueba otro n\u00famero\")\nexcept Exception as e:\n    print(\"Ha ocurrido un error no previsto\", type(e).__name__ )\n\nIntroduce un n\u00famero divisor: 0\nNo se puede dividir por cero, prueba otro n\u00famero\n\n- Invocaci\u00f3n de excepciones:\n---------------------------\nEn algunas ocasiones quiz\u00e1 nos interesa llamar un error manualmente, ya que un print com\u00fan no es muy elegante:\n\n\ndef mi_funcion(algo=None):\n    if algo is None:\n        print(\"Error! No se permite un valor nulo (con un print)\")\n\nmi_funcion()\n\nError! No se permite un valor nulo (con un print)\nInstrucci\u00f3n raise\nGracias a raise podemos lanzar un error manual pas\u00e1ndole el identificador. Luego simplemente podemos a\u00f1adir un except para tratar esta excepci\u00f3n que hemos lanzado:\n\n\ndef mi_funcion(algo=None):\n    try:\n        if algo is None:\n            raise ValueError(\"Error! No se permite un valor nulo\")\n    except ValueError:\n        print(\"Error! No se permite un valor nulo (desde la excepci\u00f3n)\")\n\nmi_funcion()\n\nError! No se permite un valor nulo (desde la excepci\u00f3n)\n\n7. Entradas y Salidas:\n---------------------\n\n- Entrada por teclado:\n---------------------\n\nEntrada por teclado\nYa conocemos la funci\u00f3n input() que lee una cadena por teclado. Su \u00fanico inconveniente es que debemos transformar el valor a num\u00e9rico si deseamos hacer operaciones con \u00e9l:\n\n\ndecimal = float( input(\"Introduce un n\u00famero decimal con punto: \") )\n\nIntroduce un n\u00famero decimal con punto: 3.14\nUna forma interesante de leer varios valores es almacenar los datos en una lista e irlos a\u00f1adiendo ah\u00ed para poderlos manipular en grupo:\n\nCopiado al portapapeles\nvalores = []\nprint(\"Introduce 3 valores\")\nfor x in range(3):\n    valores.append( input(\"Introduce un valor: \") )\nprint(valores)\n\nIntroduce 3 valores\nIntroduce un valor: 10\nIntroduce un valor: sdkjsdk\nIntroduce un valor: skdjs\n['10', 'sdkjsdk', 'skdjs']\n\n- Entrada por script:\n--------------------\n\nScripts con argumentos\nPara poder enviar informaci\u00f3n a un script y manejarla, tenemos que utilizar la librer\u00eda de sistema sys. En ella encontraremos la lista argv que almacena los argumentos enviados al script. Cread el siguiente script y ejecutadlo:\n\n\nimport sys\nprint(sys.argv)\n\npython argumentos.py\n\n['argumentos.py']\nAl ejecutarlo ver\u00e9is que devuelve una lista con una cadena que contiene el nombre del script. Quedaros con la idea pues, de que el primer argumento de la lista sys.argv (sys.argv[0]) es el propio nombre del script.\n\nAhora intentad ejecutarlo de nuevo pasando algunos valores como n\u00fameros y cadenas de texto entre comillas dobles, todo separado por espacios:\n\n\npython argumentos.py 100 \"Hola\" 3.14\n\n['argumentos.py', '100', 'Hola', '3.14']\nCada valor que enviamos al script durante la llamada se llama argumento e implica una forma de entrada de datos alternativa sin usar el input().\n\nEl siguiente ejemplo es un script que recibe dos argumentos: un texto y un n\u00famero entero. Lo que hace es imprimir la cadena de texto tantas veces como le indiquemos en el n\u00famero. Tomaos el tiempo necesario para analizar y entender cada l\u00ednea:\n\n\nimport sys\n\n# Comprobaci\u00f3n de seguridad, ejecutar s\u00f3lo si se reciben 2 argumentos reales\nif len(sys.argv) == 3:\n    texto = sys.argv[1]\n    repeticiones = int(sys.argv[2])\n    for r in range(repeticiones):\n        print(texto)\nelse:\n    print(\"Error - Introduce los argumentos correctamente\")\n    print('Ejemplo: escribir_lineas.py \"Texto\" 5')\n\npython escribir_lineas.py \"Hola Mundo!!!\" 5\n\nHola Mundo!!!\nHola Mundo!!!\nHola Mundo!!!\nHola Mundo!!!\nHola Mundo!!!\n\n- Salida por pantalla:\n---------------------\nLa funci\u00f3n print() es la forma general de mostrar informaci\u00f3n por pantalla. Generalmente podemos mostrar texto y variables separ\u00e1ndolos con comas:\n\n\nv = \"otro texto\"\nn = 10\n\nprint(\"Un texto\",v,\"y un n\u00famero\",n)\n\nUn texto otro texto y un n\u00famero 10\nEl m\u00e9todo .format()\nEs una funcionalidad de las cadenas de texto que nos permite formatear informaci\u00f3n en una cadena (variables o valores literales) c\u00f3modamente utilizando identificadores referenciados:\n\n\nc = \"Un texto '{}' y un n\u00famero '{}'\".format(v,n)\nprint(c)\n\nUn texto 'otro texto' y un n\u00famero '10'\nTambi\u00e9n podemos referenciar a partir de la posici\u00f3n de los valores utilizando \u00edndices:\n\n\nprint( \"Un texto '{1}' y un n\u00famero '{0}'\".format(v,n) )\nprint(c)\n\nUn texto '10' y un n\u00famero 'otro texto'\nO podemos utilizar identificador con una clave y luego pasarlas en el format:\n\n\nprint( \"Un texto '{v}' y un n\u00famero '{n}'\".format(n=n,v=v) )\n\nUn texto 'otro texto' y un n\u00famero '10'\n\nprint(\"{v},{v},{v}\".format(v=v))\n\notro texto,otro texto,otro texto\n\n- formateo simplificado:\n\nLa nueva sintaxis nos permite ahorrarnos el m\u00e9todo:\n\n\nnombre = \"H\u00e9ctor\"\ntexto = f\"Hola {nombre}\"\nprint(texto)\n\nHola H\u00e9ctor\nS\u00f3lo tenemos que indicar f antes de la cadena y sustituir las variables por sus nombre.\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Python: &#8212;&#8212; 1. Como ejecutar python en linux: &#8211; Abrir una terminal &#8211; Verificar la instalaci\u00f3n de python: python3 &#8211;version &#8211; Ejecutar un script de python: * Navega hasta el archivo: cd \/ruta\/del\/archivo * Ejecuta el archivo con el comando python3: python3 mi_archivo.py &#8211; Hacer el script ejecutable (opcional): Si deseas ejecutar el script sin&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[60],"tags":[126,125,129,124,128,109,36,127,34,91,31],"class_list":["post-88","post","type-post","status-publish","format-standard","hentry","category-programacion","tag-bucles","tag-condicionales","tag-entradas-y-salidas","tag-estructuras-de-control","tag-excepciones","tag-funciones","tag-linux","tag-manejo-errores","tag-operadores","tag-python","tag-variables"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Python - Ciencia y Tecnologia<\/title>\n<meta name=\"description\" content=\"Python es un lenguaje de programaci\u00f3n de alto nivel, interpretado y de prop\u00f3sito general, conocido por su legibilidad y simplicidad. Dise\u00f1ado por Guido van Rossum y lanzado por primera vez en 1991, Python promueve el desarrollo r\u00e1pido y la escritura de c\u00f3digo claro y l\u00f3gico para proyectos tanto grandes como peque\u00f1os.Caracter\u00edsticas Clave:Sintaxis Clara: Facilita la lectura y escritura del c\u00f3digo.Bibliotecas Est\u00e1ndar Amplias: Ofrece m\u00f3dulos para diversas tareas como web development, data analysis, y machine learning.Comunidad Activa: Gran cantidad de recursos, tutoriales y soporte en l\u00ednea.Multiplataforma: Compatible con diferentes sistemas operativos como Windows, macOS y Linux.Ya sea que seas un principiante o un desarrollador experimentado, Python te ayudar\u00e1 a alcanzar tus metas de programaci\u00f3n de manera eficiente y efectiva.\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python - Ciencia y Tecnologia\" \/>\n<meta property=\"og:description\" content=\"Python es un lenguaje de programaci\u00f3n de alto nivel, interpretado y de prop\u00f3sito general, conocido por su legibilidad y simplicidad. Dise\u00f1ado por Guido van Rossum y lanzado por primera vez en 1991, Python promueve el desarrollo r\u00e1pido y la escritura de c\u00f3digo claro y l\u00f3gico para proyectos tanto grandes como peque\u00f1os.Caracter\u00edsticas Clave:Sintaxis Clara: Facilita la lectura y escritura del c\u00f3digo.Bibliotecas Est\u00e1ndar Amplias: Ofrece m\u00f3dulos para diversas tareas como web development, data analysis, y machine learning.Comunidad Activa: Gran cantidad de recursos, tutoriales y soporte en l\u00ednea.Multiplataforma: Compatible con diferentes sistemas operativos como Windows, macOS y Linux.Ya sea que seas un principiante o un desarrollador experimentado, Python te ayudar\u00e1 a alcanzar tus metas de programaci\u00f3n de manera eficiente y efectiva.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cienciaytecnology.com\/wordpress\/python\/\" \/>\n<meta property=\"og:site_name\" content=\"Ciencia y Tecnologia\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-21T16:45:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-03T18:44:21+00:00\" \/>\n<meta name=\"author\" content=\"david\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"david\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/\"},\"author\":{\"name\":\"david\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\"},\"headline\":\"Python\",\"datePublished\":\"2024-09-21T16:45:22+00:00\",\"dateModified\":\"2024-11-03T18:44:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/\"},\"wordCount\":1,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\"},\"keywords\":[\"Bucles\",\"Condicionales\",\"Entradas y Salidas\",\"Estructuras de control\",\"Excepciones\",\"Funciones\",\"Linux\",\"Manejo errores\",\"Operadores\",\"Python\",\"variables\"],\"articleSection\":[\"Programacion\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/\",\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/\",\"name\":\"Python - Ciencia y Tecnologia\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#website\"},\"datePublished\":\"2024-09-21T16:45:22+00:00\",\"dateModified\":\"2024-11-03T18:44:21+00:00\",\"description\":\"Python es un lenguaje de programaci\u00f3n de alto nivel, interpretado y de prop\u00f3sito general, conocido por su legibilidad y simplicidad. Dise\u00f1ado por Guido van Rossum y lanzado por primera vez en 1991, Python promueve el desarrollo r\u00e1pido y la escritura de c\u00f3digo claro y l\u00f3gico para proyectos tanto grandes como peque\u00f1os.Caracter\u00edsticas Clave:Sintaxis Clara: Facilita la lectura y escritura del c\u00f3digo.Bibliotecas Est\u00e1ndar Amplias: Ofrece m\u00f3dulos para diversas tareas como web development, data analysis, y machine learning.Comunidad Activa: Gran cantidad de recursos, tutoriales y soporte en l\u00ednea.Multiplataforma: Compatible con diferentes sistemas operativos como Windows, macOS y Linux.Ya sea que seas un principiante o un desarrollador experimentado, Python te ayudar\u00e1 a alcanzar tus metas de programaci\u00f3n de manera eficiente y efectiva.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/python\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/\",\"name\":\"Ciencia y Tecnologia\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/b76777e3c0d2d08ea263068461c90d4b\",\"name\":\"david\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\",\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\",\"contentUrl\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\",\"width\":1024,\"height\":1024,\"caption\":\"david\"},\"logo\":{\"@id\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/a-person-programming-with-a-computer-screen-and-code-visible.jpg\"},\"sameAs\":[\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\"],\"url\":\"https:\\\/\\\/cienciaytecnology.com\\\/wordpress\\\/author\\\/david\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Python - Ciencia y Tecnologia","description":"Python es un lenguaje de programaci\u00f3n de alto nivel, interpretado y de prop\u00f3sito general, conocido por su legibilidad y simplicidad. Dise\u00f1ado por Guido van Rossum y lanzado por primera vez en 1991, Python promueve el desarrollo r\u00e1pido y la escritura de c\u00f3digo claro y l\u00f3gico para proyectos tanto grandes como peque\u00f1os.Caracter\u00edsticas Clave:Sintaxis Clara: Facilita la lectura y escritura del c\u00f3digo.Bibliotecas Est\u00e1ndar Amplias: Ofrece m\u00f3dulos para diversas tareas como web development, data analysis, y machine learning.Comunidad Activa: Gran cantidad de recursos, tutoriales y soporte en l\u00ednea.Multiplataforma: Compatible con diferentes sistemas operativos como Windows, macOS y Linux.Ya sea que seas un principiante o un desarrollador experimentado, Python te ayudar\u00e1 a alcanzar tus metas de programaci\u00f3n de manera eficiente y efectiva.","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Python - Ciencia y Tecnologia","og_description":"Python es un lenguaje de programaci\u00f3n de alto nivel, interpretado y de prop\u00f3sito general, conocido por su legibilidad y simplicidad. Dise\u00f1ado por Guido van Rossum y lanzado por primera vez en 1991, Python promueve el desarrollo r\u00e1pido y la escritura de c\u00f3digo claro y l\u00f3gico para proyectos tanto grandes como peque\u00f1os.Caracter\u00edsticas Clave:Sintaxis Clara: Facilita la lectura y escritura del c\u00f3digo.Bibliotecas Est\u00e1ndar Amplias: Ofrece m\u00f3dulos para diversas tareas como web development, data analysis, y machine learning.Comunidad Activa: Gran cantidad de recursos, tutoriales y soporte en l\u00ednea.Multiplataforma: Compatible con diferentes sistemas operativos como Windows, macOS y Linux.Ya sea que seas un principiante o un desarrollador experimentado, Python te ayudar\u00e1 a alcanzar tus metas de programaci\u00f3n de manera eficiente y efectiva.","og_url":"https:\/\/cienciaytecnology.com\/wordpress\/python\/","og_site_name":"Ciencia y Tecnologia","article_published_time":"2024-09-21T16:45:22+00:00","article_modified_time":"2024-11-03T18:44:21+00:00","author":"david","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"david"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cienciaytecnology.com\/wordpress\/python\/#article","isPartOf":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/python\/"},"author":{"name":"david","@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b"},"headline":"Python","datePublished":"2024-09-21T16:45:22+00:00","dateModified":"2024-11-03T18:44:21+00:00","mainEntityOfPage":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/python\/"},"wordCount":1,"commentCount":0,"publisher":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b"},"keywords":["Bucles","Condicionales","Entradas y Salidas","Estructuras de control","Excepciones","Funciones","Linux","Manejo errores","Operadores","Python","variables"],"articleSection":["Programacion"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cienciaytecnology.com\/wordpress\/python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/cienciaytecnology.com\/wordpress\/python\/","url":"https:\/\/cienciaytecnology.com\/wordpress\/python\/","name":"Python - Ciencia y Tecnologia","isPartOf":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#website"},"datePublished":"2024-09-21T16:45:22+00:00","dateModified":"2024-11-03T18:44:21+00:00","description":"Python es un lenguaje de programaci\u00f3n de alto nivel, interpretado y de prop\u00f3sito general, conocido por su legibilidad y simplicidad. Dise\u00f1ado por Guido van Rossum y lanzado por primera vez en 1991, Python promueve el desarrollo r\u00e1pido y la escritura de c\u00f3digo claro y l\u00f3gico para proyectos tanto grandes como peque\u00f1os.Caracter\u00edsticas Clave:Sintaxis Clara: Facilita la lectura y escritura del c\u00f3digo.Bibliotecas Est\u00e1ndar Amplias: Ofrece m\u00f3dulos para diversas tareas como web development, data analysis, y machine learning.Comunidad Activa: Gran cantidad de recursos, tutoriales y soporte en l\u00ednea.Multiplataforma: Compatible con diferentes sistemas operativos como Windows, macOS y Linux.Ya sea que seas un principiante o un desarrollador experimentado, Python te ayudar\u00e1 a alcanzar tus metas de programaci\u00f3n de manera eficiente y efectiva.","breadcrumb":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/python\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cienciaytecnology.com\/wordpress\/python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cienciaytecnology.com\/wordpress\/python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/cienciaytecnology.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Python"}]},{"@type":"WebSite","@id":"https:\/\/cienciaytecnology.com\/wordpress\/#website","url":"https:\/\/cienciaytecnology.com\/wordpress\/","name":"Ciencia y Tecnologia","description":"","publisher":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cienciaytecnology.com\/wordpress\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":["Person","Organization"],"@id":"https:\/\/cienciaytecnology.com\/wordpress\/#\/schema\/person\/b76777e3c0d2d08ea263068461c90d4b","name":"david","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg","url":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg","contentUrl":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg","width":1024,"height":1024,"caption":"david"},"logo":{"@id":"https:\/\/cienciaytecnology.com\/wordpress\/wp-content\/uploads\/2024\/10\/a-person-programming-with-a-computer-screen-and-code-visible.jpg"},"sameAs":["https:\/\/cienciaytecnology.com\/wordpress"],"url":"https:\/\/cienciaytecnology.com\/wordpress\/author\/david\/"}]}},"_links":{"self":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts\/88","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/comments?post=88"}],"version-history":[{"count":1,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts\/88\/revisions"}],"predecessor-version":[{"id":89,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/posts\/88\/revisions\/89"}],"wp:attachment":[{"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/media?parent=88"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/categories?post=88"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cienciaytecnology.com\/wordpress\/wp-json\/wp\/v2\/tags?post=88"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}