{"id":387,"date":"2024-12-07T19:31:57","date_gmt":"2024-12-07T19:31:57","guid":{"rendered":"https:\/\/equipomedios.com\/blog\/?p=387"},"modified":"2024-10-18T19:32:37","modified_gmt":"2024-10-18T19:32:37","slug":"387-2","status":"publish","type":"post","link":"https:\/\/equipomedios.com\/blog\/387-2\/","title":{"rendered":""},"content":{"rendered":"<h1>Paquetes Python<\/h1>\n<p>Los paquetes pueden contener m\u00f3dulos y otros paquetes. Son directorios. El \u00fanico requisito es que contengan un archivo llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__init__.py<\/span><\/code>. Este archivo puede estar vac\u00edo.<\/p>\n<div id=\"sentencia-from\" class=\"section\"><span id=\"python-sent-from\"><\/span><\/p>\n<h2>Sentencia from<\/h2>\n<p>La sentencia\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">from<\/span><\/code>\u00a0se utiliza en conjunto a la previa sentencia\u00a0<span class=\"std std-ref\">import<\/span>\u00a0para importar un m\u00f3dulo.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kn\">from<\/span> <span class=\"nn\">utilidades<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">suma_total<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Por ejemplo, cree un directorio llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tostadas_pipo<\/span><\/code>, que contiene los archivos llamados\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__init__.py<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">principal.py<\/span><\/code>\u00a0(dentro del mismo directorio).<\/p>\n<ul class=\"simple\">\n<li>Archivo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__init__.py<\/span><\/code>, este archivo no tiene ning\u00fan contenido.<\/li>\n<li>Archivo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">principal.py<\/span><\/code>\u00a0incluye el siguiente c\u00f3digo:<\/li>\n<\/ul>\n<div class=\"highlight-python notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"kn\">from<\/span> <span class=\"nn\">utilidades<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">impuestos<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">utilidades<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">calculos<\/span>\r\n\r\n<span class=\"n\">monto<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Introduzca un monto entero: \"<\/span><span class=\"p\">))<\/span>\r\n<span class=\"c1\"># Llama funci\u00f3n definida en el m\u00f3dulo \"impuestos\"<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"s2\">\"El impuesto IVA de 12%:\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">impuestos<\/span><span class=\"o\">.<\/span><span class=\"n\">impuesto_iva12<\/span><span class=\"p\">(<\/span><span class=\"n\">monto<\/span><span class=\"p\">)<\/span>\r\n\r\n<span class=\"n\">suma<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Introduzca un monto entero a sumar: \"<\/span><span class=\"p\">))<\/span>\r\n<span class=\"c1\"># Llama funci\u00f3n definida en el m\u00f3dulo \"calculos\"<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"s2\">\"La suma total es:\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">calculos<\/span><span class=\"o\">.<\/span><span class=\"n\">suma_total<\/span><span class=\"p\">(<\/span><span class=\"n\">suma<\/span><span class=\"p\">)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Seguidamente dentro del directorio\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tostadas_pipo<\/span><\/code>, cree otro directorio llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">utilidades<\/span><\/code>, dentro de este, cree los siguientes archivos:<\/p>\n<ul class=\"simple\">\n<li>Archivo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__init__.py<\/span><\/code>, este archivo no tiene ning\u00fan contenido.<\/li>\n<li>Archivo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">calculos.py<\/span><\/code>\u00a0incluye el siguiente c\u00f3digo:<\/li>\n<\/ul>\n<div class=\"highlight-python notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"sd\">\"\"\" M\u00f3dulo para c\u00e1lculos diversos \"\"\"<\/span>\r\n\r\n<span class=\"k\">def<\/span> <span class=\"nf\">suma_total<\/span><span class=\"p\">(<\/span><span class=\"n\">monto<\/span><span class=\"o\">=<\/span><span class=\"mi\">0<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"sd\">\"\"\" Calcula la suma total \"\"\"<\/span>\r\n    <span class=\"n\">calculo_suma<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">20<\/span>\r\n    <span class=\"n\">calculo_suma<\/span> <span class=\"o\">+=<\/span> <span class=\"n\">monto<\/span>\r\n    <span class=\"k\">return<\/span> <span class=\"n\">calculo_suma<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<ul class=\"simple\">\n<li>Archivo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">impuestos.py<\/span><\/code>\u00a0incluye el siguiente c\u00f3digo:<\/li>\n<\/ul>\n<div class=\"highlight-python notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"sd\">\"\"\" M\u00f3dulo para c\u00e1lculos de diversos impuestos \"\"\"<\/span>\r\n\r\n<span class=\"k\">def<\/span> <span class=\"nf\">impuesto_iva12<\/span><span class=\"p\">(<\/span><span class=\"n\">monto<\/span><span class=\"o\">=<\/span><span class=\"mi\">0<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"sd\">\"\"\" Calcula el impuesto del IVA de 12 % \"\"\"<\/span>\r\n    <span class=\"n\">total<\/span> <span class=\"o\">=<\/span> <span class=\"p\">((<\/span><span class=\"n\">monto<\/span> <span class=\"o\">*<\/span> <span class=\"mi\">12<\/span><span class=\"p\">)<\/span><span class=\"o\">\/<\/span><span class=\"mi\">100<\/span><span class=\"p\">)<\/span>\r\n    <span class=\"k\">return<\/span> <span class=\"n\">total<\/span>\r\n\r\n\r\n<span class=\"k\">def<\/span> <span class=\"nf\">impuesto_iva14<\/span><span class=\"p\">(<\/span><span class=\"n\">monto<\/span><span class=\"o\">=<\/span><span class=\"mi\">0<\/span><span class=\"p\">):<\/span>\r\n    <span class=\"sd\">\"\"\" Calcula el impuesto del IVA de 14 % \"\"\"<\/span>\r\n    <span class=\"n\">total<\/span> <span class=\"o\">=<\/span> <span class=\"p\">((<\/span><span class=\"n\">monto<\/span> <span class=\"o\">*<\/span> <span class=\"mi\">14<\/span><span class=\"p\">)<\/span><span class=\"o\">\/<\/span><span class=\"mi\">100<\/span><span class=\"p\">)<\/span>\r\n    <span class=\"k\">return<\/span> <span class=\"n\">total<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Al final tendr\u00e1 la siguiente estructura del directorios del paquete Python llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tostadas_pipo<\/span><\/code>, como se describe a continuaci\u00f3n:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre>tostadas_pipo\/\r\n\u251c\u2500\u2500 __init__.py\r\n\u251c\u2500\u2500 principal.py\r\n\u2514\u2500\u2500 utilidades\/\r\n    \u251c\u2500\u2500 calculos.py\r\n    \u251c\u2500\u2500 impuestos.py\r\n    \u2514\u2500\u2500 __init__.py\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Entonces realizar importaciones desde una estructura de directorios mas completa se realiza de las siguientes formas:<\/p>\n<ul class=\"simple\">\n<li>Importar todos los m\u00f3dulo el sub-paquete\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">utilidades<\/span><\/code>, ejecutando:<\/li>\n<\/ul>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"kn\">import<\/span> <span class=\"nn\">tostadas_pipo.utilidades<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">tostadas_pipo<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">utilidades<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">tostadas_pipo.utilidades<\/span> <span class=\"kn\">import<\/span> <span class=\"o\">*<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<ul class=\"simple\">\n<li>Importar el m\u00f3dulo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">calculos.py<\/span><\/code>\u00a0desde el sub-paquete\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">utilidades<\/span><\/code>, ejecutando:<\/li>\n<\/ul>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"kn\">from<\/span> <span class=\"nn\">tostadas_pipo.utilidades<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">calculos<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<ul class=\"simple\">\n<li>Importar la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">impuesto_iva14()<\/span><\/code>\u00a0desde el m\u00f3dulo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">impuestos.py<\/span><\/code>\u00a0en el sub-paquete\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">utilidades<\/span><\/code>, ejecutando:<\/li>\n<\/ul>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"kn\">from<\/span> <span class=\"nn\">tostadas_pipo.utilidades.impuestos<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">impuesto_iva14<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Por ejemplo, cree un m\u00f3dulo llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">calculo_factura_pipo.py<\/span><\/code>, que contiene las importaciones del paquete\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tostadas_pipo<\/span><\/code>:<\/p>\n<ul class=\"simple\">\n<li>Archivo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">calculo_factura_pipo.py<\/span><\/code>\u00a0incluye el siguiente c\u00f3digo:<\/li>\n<\/ul>\n<div class=\"highlight-python notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"kn\">from<\/span> <span class=\"nn\">tostadas_pipo.utilidades<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">calculos<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"nn\">tostadas_pipo.utilidades.impuestos<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">impuesto_iva14<\/span>\r\n\r\n<span class=\"n\">monto<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Introduzca un monto entero: \"<\/span><span class=\"p\">))<\/span>\r\n<span class=\"n\">monto_suma<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Introduzca un monto entero a sumar: \"<\/span><span class=\"p\">))<\/span>\r\n\r\n<span class=\"n\">suma<\/span> <span class=\"o\">=<\/span> <span class=\"n\">impuesto_iva14<\/span><span class=\"p\">(<\/span><span class=\"n\">monto<\/span><span class=\"p\">)<\/span> <span class=\"o\">+<\/span> <span class=\"n\">calculos<\/span><span class=\"o\">.<\/span><span class=\"n\">suma_total<\/span><span class=\"p\">(<\/span><span class=\"n\">monto_suma<\/span><span class=\"p\">)<\/span>\r\n\r\n<span class=\"nb\">print<\/span> <span class=\"s2\">\"Total a Facturar: <\/span><span class=\"si\">{0}<\/span><span class=\"s2\"> BsS, con IVA 14%.\"<\/span><span class=\"o\">.<\/span><span class=\"n\">format<\/span><span class=\"p\">(<\/span><span class=\"n\">suma<\/span><span class=\"p\">)<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Paquetes Python Los paquetes pueden contener m\u00f3dulos y otros paquetes. Son directorios. El \u00fanico requisito es que contengan un archivo llamado\u00a0__init__.py. Este archivo puede estar vac\u00edo. Sentencia from La sentencia\u00a0from\u00a0se utiliza en conjunto a la previa sentencia\u00a0import\u00a0para importar un m\u00f3dulo. &gt;&gt;&gt; from utilidades import suma_total Por ejemplo, cree un directorio llamado\u00a0tostadas_pipo, que contiene los archivos [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":331,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[39,40],"tags":[],"class_list":["post-387","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programacion","category-python"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/equipomedios.com\/blog\/wp-content\/uploads\/2024\/08\/python-logo-master-v3-TM.png?fit=601%2C203&ssl=1","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/387","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/comments?post=387"}],"version-history":[{"count":1,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/387\/revisions"}],"predecessor-version":[{"id":388,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/387\/revisions\/388"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/media\/331"}],"wp:attachment":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/media?parent=387"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/categories?post=387"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/tags?post=387"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}