{"id":98,"date":"2020-06-03T18:39:41","date_gmt":"2020-06-03T16:39:41","guid":{"rendered":"https:\/\/www.pythonparatodo.com\/?p=98"},"modified":"2020-06-03T18:39:43","modified_gmt":"2020-06-03T16:39:43","slug":"obtener-los-argumentos-pasados-a-la-aplicacion-usando-sys","status":"publish","type":"post","link":"https:\/\/www.pythonparatodo.com\/?p=98","title":{"rendered":"Obtener los argumentos pasados a la aplicaci\u00f3n usando sys"},"content":{"rendered":"\n<p>Para obtener los argumentos pasados a un script Python, se puede usar el m\u00f3dulo <strong>sys,<\/strong> esto se hace incluyendo <strong>import sys<\/strong> al principio del programa y revisando el atributo argv para ver si tiene argumentos, cuantos y cuales son.<\/p>\n\n\n\n<p>Tras importar el m\u00f3dulo en el script, los argumentos se recogen en un atributo del tipo lista llamado <strong>sys.argv<\/strong>. Esta lista contiene como m\u00ednimo un elemento, que es el nombre del programa, el resto de elementos son los argumentos que se han pasado.<\/p>\n\n\n\n<p>Para saber cu\u00e1ntos argumentos se han pasado hay que averiguar la cantidad de elementos del atributo, para esto se usa <strong>len(sys.argv)<\/strong>-1.<\/p>\n\n\n\n<p>Si se recorre la lista de elementos, sys.argv[0] ser\u00e1 el nombre de la aplicaci\u00f3n, sys.argv[1] ser\u00e1 el primer argumento pasado y sys.argv[len(sys.argv)] ser\u00e1 el \u00faltimo.<\/p>\n\n\n\n<p>El siguiente ejemplo muestra su uso:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python\">import sys\nprint('Los argumentos obtenidos son: %s' %(len(sys.argv)-1))\nprint('La lista completa contiene: ' , sys.argv)\nprint('Los argumentos son los siguientes:')\nif len(sys.argv)>1:\n    for x in range(1,len(sys.argv)):\n        pass\n        print('%s: %s' %(x,sys.argv[x]))<\/code><\/pre>\n\n\n\n<p>Se ejecuta el script pasando varios argumentos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"bash\" class=\"language-bash\">$ python param.py uno dos tres\nLos argumentos pasados son: 3\nLa lista completa contiene:  ['param.py', 'uno', 'dos', 'tres']\nLos argumentos son los siguientes:\n1: uno\n2: dos\n3: tres<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Para obtener los argumentos pasados a un script Python, se puede usar el m\u00f3dulo sys, esto se hace incluyendo import &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[46,2,6,26,47],"class_list":["post-98","post","type-post","status-publish","format-standard","hentry","category-python","tag-argumentos","tag-python","tag-python3","tag-sys","tag-sys-argv"],"_links":{"self":[{"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts\/98","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=98"}],"version-history":[{"count":2,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts\/98\/revisions"}],"predecessor-version":[{"id":100,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=\/wp\/v2\/posts\/98\/revisions\/100"}],"wp:attachment":[{"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=98"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=98"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pythonparatodo.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=98"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}