{"id":2883,"date":"2025-03-23T06:00:00","date_gmt":"2025-03-23T06:00:00","guid":{"rendered":"https:\/\/myvlcsys.com\/?p=2883"},"modified":"2025-03-24T19:49:24","modified_gmt":"2025-03-24T19:49:24","slug":"python-funciones-y-alcance","status":"publish","type":"post","link":"https:\/\/myvlcsys.com\/?p=2883","title":{"rendered":"Python: Funciones y alcance."},"content":{"rendered":"\n<p>Hola a todos!<\/p>\n\n\n\n<p>Estoy muy emocionado de compartir con ustedes que he creado un nuevo c\u00f3digo en Python inspirado en los retos de programaci\u00f3n de <a href=\"https:\/\/retosdeprogramacion.com\/roadmap\/\">MoureDev<\/a>. En esta ocasi\u00f3n, he resuelto el reto 002, que presenta un desaf\u00edo \u00fanico y emocionante para los desarrolladores.<\/p>\n\n\n\n<p>En mi soluci\u00f3n, he implementado diversas t\u00e9cnicas y buenas pr\u00e1cticas de programaci\u00f3n en Python. Este reto no solo me permiti\u00f3 mejorar mis habilidades de codificaci\u00f3n, sino tambi\u00e9n aprender nuevas estrategias para abordar problemas complejos.<\/p>\n\n\n\n<p>Aqu\u00ed est\u00e1 el c\u00f3digo de mi soluci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\"\"\" \/*\n * EJERCICIO:\n * - Crea ejemplos de funciones b\u00e1sicas que representen las diferentes\n *   posibilidades del lenguaje:\n *   Sin par\u00e1metros ni retorno, con uno o varios par\u00e1metros, con retorno...\n * - Comprueba si puedes crear funciones dentro de funciones.\n * - Utiliza alg\u00fan ejemplo de funciones ya creadas en el lenguaje.\n * - Pon a prueba el concepto de variable LOCAL y GLOBAL.\n * - Debes hacer print por consola del resultado de todos los ejemplos.\n *   (y tener en cuenta que cada lenguaje puede poseer m\u00e1s o menos posibilidades)\n *\n * DIFICULTAD EXTRA (opcional):\n * Crea una funci\u00f3n que reciba dos par\u00e1metros de tipo cadena de texto y retorne un n\u00famero.\n * - La funci\u00f3n imprime todos los n\u00fameros del 1 al 100. Teniendo en cuenta que:\n *   - Si el n\u00famero es m\u00faltiplo de 3, muestra la cadena de texto del primer par\u00e1metro.\n *   - Si el n\u00famero es m\u00faltiplo de 5, muestra la cadena de texto del segundo par\u00e1metro.\n *   - Si el n\u00famero es m\u00faltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.\n *   - La funci\u00f3n retorna el n\u00famero de veces que se ha impreso el n\u00famero en lugar de los textos.\n *\n * Presta especial atenci\u00f3n a la sintaxis que debes utilizar en cada uno de los casos.\n * Cada lenguaje sigue una convenciones que debes de respetar para que el c\u00f3digo se entienda.\n *\/ \"\"\"\n\n\n### Ejemplos de funciones  dddd\n\n## funcion sin parametros ni retorno\n\ndef inicioFuncion():\n    print()\n\n\n## funcion conParametros\n\ndef funcionParametro(par1, par2):\n    print()\n\n## funcion con retorno\n\ndef funcionSaluda(nombre):\n    \n    return \"Hola \" + nombre\n\n## funcion dentro de funcion\n\ndef funcion_suma_total(x):\n    def funcion_suma_parcial(y):\n        return x + y\n    return funcion_suma_parcial\n\n# Uso de la funci\u00f3n\nresultado = funcion_suma_total(10)\nprint(resultado(5))\n\n## ejemplos de funciones ya creadas en el sistema\n\nprint(\"Funicones del sistema    \")\n\ntexto=\"Ejemplo de texto\"\nprint()\nprint(texto)\nlongitud =len(texto)\nprint(\"Longitud del texto: \" + str(longitud) )\nprint(texto.upper())\n\n## variable locales y global\n\nvar_global = \"El coche\"\n\ndef colorea(objeto):\n    var_local= \"azul\"\n    print(f\"{objeto} es {var_local}\")\n\n\nprint(colorea(var_global))\n    \n### DIFICULTAD EXTRA.\n\ndef imprimeNumeros(text_1, text_2) -&gt; int:\n    \n    count = 0\n    for number in range(1, 101):\n        if number % 3 == 0 and number % 5 == 0:\n            print(text_1 + text_2)\n        elif number % 3 == 0:\n            print(text_1)\n        elif number % 5 == 0:\n            print(text_2)\n        else:\n            print(number)\n            count += 1\n    return count\n\n        \nimprimeNumeros(\"Lucas\",\"Grejander\")<\/code><\/pre>\n\n\n\n<p>Los invito a revisar el c\u00f3digo y compartir sus comentarios. Estoy interesado por conocer sus opiniones y sugerencias para seguir mejorando.<\/p>\n\n\n\n<p>Adem\u00e1s, pueden ver el c\u00f3digo completo de mi soluci\u00f3n en mi repositorio de GitHub: <a href=\"https:\/\/github.com\/MyvlcDev\/PythonMoureDev\/blob\/main\/RetosProgramacion\/02-funciones_y_alcance.py\" target=\"_blank\" rel=\"noopener\" title=\"\">Mi Repositorio<\/a>.<\/p>\n\n\n\n<p>\u00a1Gracias por su apoyo y feliz codificaci\u00f3n!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hola a todos! Estoy muy emocionado de compartir con ustedes que he creado un nuevo c\u00f3digo en Python inspirado en los retos de programaci\u00f3n de MoureDev. En esta ocasi\u00f3n, he&hellip; <\/p>\n","protected":false},"author":4,"featured_media":2682,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[13,64,72],"tags":[47,36,65,71],"class_list":["post-2883","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-progrmacion","category-python","category-retosprogramacion","tag-myvlcsys","tag-programacion-2","tag-python","tag-retosprogrmacion"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/posts\/2883","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2883"}],"version-history":[{"count":7,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/posts\/2883\/revisions"}],"predecessor-version":[{"id":2924,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/posts\/2883\/revisions\/2924"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=\/wp\/v2\/media\/2682"}],"wp:attachment":[{"href":"https:\/\/myvlcsys.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2883"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2883"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/myvlcsys.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2883"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}