{"id":216,"date":"2020-08-11T17:59:00","date_gmt":"2020-08-11T15:59:00","guid":{"rendered":"https:\/\/www.pythonparatodo.com\/?p=216"},"modified":"2021-07-31T18:57:30","modified_gmt":"2021-07-31T16:57:30","slug":"os-getenv-y-dotenv","status":"publish","type":"post","link":"https:\/\/www.pythonparatodo.com\/?p=216","title":{"rendered":"os.getenv() y dotEnv"},"content":{"rendered":"\n<p><strong>dotEnv<\/strong>&nbsp;es un paquete de Python que sirve para gestionar los ficheros con extensi\u00f3n .env donde se encuentran registros del tipo clave-valor, convirti\u00e9ndolos en variables de entorno que se pueden leer desde Python.<\/p>\n\n\n\n<p>El m\u00e9todo&nbsp;<strong>getenv(&#8216;nombre_variable_entorno&#8217;)<\/strong>&nbsp;se usa en Python para leer las variables de entorno del sistema, por ejemplo en un sistema operativo Linux,&nbsp;<strong>os.getenv(&#8216;PWD&#8217;)<\/strong>&nbsp;devolver\u00eda la ruta del directorio actual o en un sistema operativo Windows&nbsp;<strong>os.getenv(&#8216;USERNAME&#8217;)<\/strong>&nbsp;devolver\u00eda el nombre del usuario actual.<\/p>\n\n\n\n<p>Para poder usar el paquete es necesario instalarlo primero, y esto se hace ejecutando el siguiente c\u00f3digo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"bash\" class=\"language-bash\"># pip install python-dotenv <\/code><\/pre>\n\n\n\n<p>Se puede ver un ejemplo pr\u00e1ctico de uso, creando un fichero de texto llamado <strong>.env<\/strong> en el directorio home del usuario y escribiendo varios registros del tipo clave-valor dentro de el como los siguientes:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"properties\" class=\"language-properties\">usuario=arcadio\nbd=gestbar\ntabla=tapas\npassword=Tipndo!<\/code><\/pre>\n\n\n\n<p>Si se abre el interprete interactivo de Python en la misma ruta, el comando a ejecutar para poder hacer uso del paquete ser\u00eda:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python\"># from dotenv import load_dotenv<\/code><\/pre>\n\n\n\n<p>Y el siguiente, ser\u00eda el comando que convierte los registros clave-valor del fichero en variables de entorno para facilitar su uso.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python\"># load_dotenv()<\/code><\/pre>\n\n\n\n<p>Tras esto se puede proceder a la carga de las variables de entorno usando&nbsp;<strong>os<\/strong>&nbsp;y el m\u00e9todo&nbsp;<strong>getenv()<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python\">&gt;&gt;&gt; from dotenv import load_dotenv\n&gt;&gt;&gt; load_dotenv()\nTrue\n&gt;&gt;&gt; import os\n&gt;&gt;&gt; os.getenv('usuario')\n'arcadio'\n&gt;&gt;&gt; os.getenv('bd')\n'gestbar'\n&gt;&gt;&gt; os.getenv('tabla')\n'tapas'\n&gt;&gt;&gt; os.getenv('password')\n'Tipndo!'<\/code><\/pre>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"https:\/\/www.buymeacoffee.com\/pythonparatodo\" target=\"_blank\">Si te ha servido de ayuda, inv\u00edtame a un caf\u00e9.<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>dotEnv&nbsp;es un paquete de Python que sirve para gestionar los ficheros con extensi\u00f3n .env donde se encuentran registros del tipo &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[101,100,4],"tags":[103,102,105,104,6],"class_list":["post-216","post","type-post","status-publish","format-standard","hentry","category-dotenv","category-os","category-python","tag-env","tag-dotenv","tag-getenv","tag-os","tag-python3"],"_links":{"self":[{"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts\/216","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=216"}],"version-history":[{"count":8,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts\/216\/revisions"}],"predecessor-version":[{"id":300,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts\/216\/revisions\/300"}],"wp:attachment":[{"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=216"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=216"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}