{"id":379,"date":"2024-11-27T19:13:02","date_gmt":"2024-11-27T19:13:02","guid":{"rendered":"https:\/\/equipomedios.com\/blog\/?p=379"},"modified":"2024-10-18T19:24:52","modified_gmt":"2024-10-18T19:24:52","slug":"funciones-integradas-python","status":"publish","type":"post","link":"https:\/\/equipomedios.com\/blog\/funciones-integradas-python\/","title":{"rendered":"Funciones integradas | Python"},"content":{"rendered":"<h1>Funciones integradas<\/h1>\n<p>El interprete Python tiene un n\u00famero de funciones integradas (built-in) dentro del m\u00f3dulo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__builtins__<\/span><\/code>, las cuales est\u00e1n siempre disponibles. Estas funciones est\u00e1n listadas en orden alfab\u00e9ticos a continuaci\u00f3n:<\/p>\n<div id=\"funciones-generales\" class=\"section\"><span id=\"python-fun-builtins-generales\"><\/span><\/p>\n<h2>Funciones generales<\/h2>\n<p>Las funciones de uso general se describen a continuaci\u00f3n:<\/p>\n<div id=\"apply\" class=\"section\"><span id=\"python-fun-apply\"><\/span><\/p>\n<h3>apply()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">apply()<\/span><\/code>\u00a0devuelve el resultado de una funci\u00f3n o objeto clase llamado con argumentos soportados.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">def<\/span> <span class=\"nf\">demo<\/span><span class=\"p\">(<\/span><span class=\"n\">valor1<\/span><span class=\"p\">,<\/span> <span class=\"n\">valor2<\/span><span class=\"p\">,<\/span> <span class=\"n\">valor3<\/span><span class=\"o\">=<\/span><span class=\"kc\">None<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"k\">return<\/span> <span class=\"n\">valor1<\/span><span class=\"p\">,<\/span> <span class=\"n\">valor2<\/span><span class=\"p\">,<\/span> <span class=\"n\">valor3<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">apply<\/span><span class=\"p\">(<\/span><span class=\"n\">demo<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"mi\">2<\/span><span class=\"p\">),<\/span> <span class=\"p\">{<\/span><span class=\"s1\">'valor3'<\/span><span class=\"p\">:<\/span> <span class=\"mi\">3<\/span><span class=\"p\">})<\/span>\r\n<span class=\"go\">(1, 2, 3)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"callable\" class=\"section\"><span id=\"python-fun-callable\"><\/span><\/p>\n<h3>callable()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">callable()<\/span><\/code>\u00a0le indica si un objecto puede ser llamado.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">callable<\/span><span class=\"p\">([<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span><span class=\"mi\">2<\/span><span class=\"p\">,<\/span><span class=\"mi\">3<\/span><span class=\"p\">])<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">callable<\/span><span class=\"p\">(<\/span><span class=\"n\">callable<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">callable<\/span><span class=\"p\">(<\/span><span class=\"kc\">False<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">callable<\/span><span class=\"p\">(<\/span><span class=\"nb\">list<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Una funci\u00f3n se puede llamar, una lista no se puede llamar. Incluso la funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">callable()<\/span><\/code>\u00a0se puede llamar.<\/p>\n<\/div>\n<div id=\"compile\" class=\"section\"><span id=\"python-fun-compile\"><\/span><\/p>\n<h3>compile()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">compile()<\/span><\/code>\u00a0devuelve un c\u00f3digo objeto Python. Usted usa la funci\u00f3n integrada Python para convertir de la cadena de caracteres de c\u00f3digo al c\u00f3digo objeto.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">exec<\/span><span class=\"p\">(<\/span><span class=\"nb\">compile<\/span><span class=\"p\">(<\/span><span class=\"s1\">'a=5<\/span><span class=\"se\">\\n<\/span><span class=\"s1\">b=7<\/span><span class=\"se\">\\n<\/span><span class=\"s1\">print a+b'<\/span><span class=\"p\">,<\/span><span class=\"s1\">''<\/span><span class=\"p\">,<\/span><span class=\"s1\">'exec'<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">12<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Aqu\u00ed,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">exec<\/span><\/code>\u00a0es el modo. El par\u00e1metro anterior que eso es el nombre del archivo para la forma del archivo el cual el c\u00f3digo es le\u00eddo. Finalmente, es ejecutado usando la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">exec()<\/span><\/code>.<\/p>\n<\/div>\n<div id=\"credits\" class=\"section\"><span id=\"python-fun-credits\"><\/span><\/p>\n<h3>credits()<\/h3>\n<p>Imprime el texto de la lista de contribuidores.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">credits<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">    Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands<\/span>\r\n<span class=\"go\">    for supporting Python development.  See www.python.org for more information.<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"copyright\" class=\"section\"><span id=\"python-fun-copyright\"><\/span><\/p>\n<h3>copyright()<\/h3>\n<p>Imprime el texto de la nota de copyright.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">copyright<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">Copyright (c) 2001-2016 Python Software Foundation.<\/span>\r\n<span class=\"go\">All Rights Reserved.<\/span>\r\n\r\n<span class=\"go\">Copyright (c) 2000 BeOpen.com.<\/span>\r\n<span class=\"go\">All Rights Reserved.<\/span>\r\n\r\n<span class=\"go\">Copyright (c) 1995-2001 Corporation for National Research Initiatives.<\/span>\r\n<span class=\"go\">All Rights Reserved.<\/span>\r\n\r\n<span class=\"go\">Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.<\/span>\r\n<span class=\"go\">All Rights Reserved.<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"dir\" class=\"section\"><span id=\"python-fun-dir\"><\/span><\/p>\n<h3>dir()<\/h3>\n<p>Si es llamado sin argumentos, devuelve los nombres en el \u00e1mbito actual.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dir<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">['__builtins__', '__doc__', '__name__', '__package__']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>De lo contrario, devuelve una lista alfab\u00e9tica de nombres que comprende (alguno(s) de) los atributos de un objeto dato, y de los atributos legibles desde este.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dir<\/span><span class=\"p\">(<\/span><span class=\"n\">__builtins__<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">['ArithmeticError', 'AssertionError', 'AttributeError',<\/span>\r\n<span class=\"go\">'BaseException', 'BufferError', 'BytesWarning',<\/span>\r\n<span class=\"go\">'DeprecationWarning', 'EOFError', 'Ellipsis',<\/span>\r\n<span class=\"go\">'EnvironmentError', 'Exception', 'False', 'FloatingPointError',<\/span>\r\n<span class=\"go\">'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError',<\/span>\r\n<span class=\"go\">'ImportWarning', 'IndentationError', 'IndexError', 'KeyError',<\/span>\r\n<span class=\"go\">'KeyboardInterrupt', 'LookupError', 'MemoryError', 'NameError',<\/span>\r\n<span class=\"go\">'None', 'NotImplemented', 'NotImplementedError', 'OSError',<\/span>\r\n<span class=\"go\">'OverflowError', 'PendingDeprecationWarning', 'ReferenceError',<\/span>\r\n<span class=\"go\">'RuntimeError', 'RuntimeWarning', 'StandardError',<\/span>\r\n<span class=\"go\">'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError',<\/span>\r\n<span class=\"go\">'SystemExit', 'TabError', 'True', 'TypeError',<\/span>\r\n<span class=\"go\">'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError',<\/span>\r\n<span class=\"go\">'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning',<\/span>\r\n<span class=\"go\">'UserWarning', 'ValueError', 'Warning', 'ZeroDivisionError',<\/span>\r\n<span class=\"go\">'_', '__debug__', '__doc__', '__import__', '__name__',<\/span>\r\n<span class=\"go\">'__package__', 'abs', 'all', 'any', 'apply', 'basestring',<\/span>\r\n<span class=\"go\">'bin', 'bool', 'buffer', 'bytearray', 'bytes', 'callable',<\/span>\r\n<span class=\"go\">'chr', 'classmethod', 'cmp', 'coerce', 'compile', 'complex',<\/span>\r\n<span class=\"go\">'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod',<\/span>\r\n<span class=\"go\">'enumerate', 'eval', 'execfile', 'exit', 'file', 'filter',<\/span>\r\n<span class=\"go\">'float', 'format', 'frozenset', 'getattr', 'globals',<\/span>\r\n<span class=\"go\">'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int',<\/span>\r\n<span class=\"go\">'intern', 'isinstance', 'issubclass', 'iter', 'len',<\/span>\r\n<span class=\"go\">'license', 'list', 'locals', 'long', 'map', 'max', 'memoryview',<\/span>\r\n<span class=\"go\">'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print',<\/span>\r\n<span class=\"go\">'property', 'quit', 'range', 'raw_input', 'reduce', 'reload',<\/span>\r\n<span class=\"go\">'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted',<\/span>\r\n<span class=\"go\">'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr',<\/span>\r\n<span class=\"go\">'unicode', 'vars', 'xrange', 'zip']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Si el objeto soporta un m\u00e9todo llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__dir__<\/span><\/code>, ese ser\u00e1 usado; de lo contrario se usa la l\u00f3gica\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">dir()<\/span><\/code>\u00a0predeterminada y devuelve:<\/p>\n<ul class=\"simple\">\n<li>para un objeto m\u00f3dulo: los atributos del m\u00f3dulo.<\/li>\n<\/ul>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kn\">import<\/span> <span class=\"nn\">os<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">os<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'module'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dir<\/span><span class=\"p\">(<\/span><span class=\"n\">os<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">['EX_CANTCREAT', 'EX_CONFIG', 'EX_DATAERR', 'EX_IOERR',<\/span>\r\n<span class=\"go\">'EX_NOHOST', 'EX_NOINPUT', 'EX_NOPERM', 'EX_NOUSER',<\/span>\r\n<span class=\"go\">'EX_OK', 'EX_OSERR', 'EX_OSFILE', 'EX_PROTOCOL',<\/span>\r\n<span class=\"go\">'EX_SOFTWARE', 'EX_TEMPFAIL', 'EX_UNAVAILABLE', 'EX_USAGE',<\/span>\r\n<span class=\"go\">'F_OK', 'NGROUPS_MAX', 'O_APPEND', 'O_ASYNC', 'O_CREAT',<\/span>\r\n<span class=\"go\">'O_DIRECT', 'O_DIRECTORY', 'O_DSYNC', 'O_EXCL', 'O_LARGEFILE',<\/span>\r\n<span class=\"go\">'O_NDELAY', 'O_NOATIME', 'O_NOCTTY', 'O_NOFOLLOW', 'O_NONBLOCK',<\/span>\r\n<span class=\"go\">'O_RDONLY', 'O_RDWR', 'O_RSYNC', 'O_SYNC', 'O_TRUNC', 'O_WRONLY',<\/span>\r\n<span class=\"go\">'P_NOWAIT', 'P_NOWAITO', 'P_WAIT', 'R_OK', 'SEEK_CUR', 'SEEK_END',<\/span>\r\n<span class=\"go\">'SEEK_SET', 'ST_APPEND', 'ST_MANDLOCK', 'ST_NOATIME', 'ST_NODEV',<\/span>\r\n<span class=\"go\">'ST_NODIRATIME', 'ST_NOEXEC', 'ST_NOSUID', 'ST_RDONLY',<\/span>\r\n<span class=\"go\">'ST_RELATIME', 'ST_SYNCHRONOUS', 'ST_WRITE', 'TMP_MAX', 'UserDict',<\/span>\r\n<span class=\"go\">'WCONTINUED', 'WCOREDUMP', 'WEXITSTATUS', 'WIFCONTINUED', 'WIFEXITED',<\/span>\r\n<span class=\"go\">'WIFSIGNALED', 'WIFSTOPPED', 'WNOHANG', 'WSTOPSIG', 'WTERMSIG',<\/span>\r\n<span class=\"go\">'WUNTRACED', 'W_OK', 'X_OK', '_Environ', '__all__', '__builtins__',<\/span>\r\n<span class=\"go\">'__doc__', '__file__', '__name__',<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">... <\/span><span class=\"p\">]<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">os<\/span><span class=\"o\">.<\/span><span class=\"vm\">__doc__<\/span>\r\n<span class=\"go\">OS routines for NT or Posix depending on what system we're on.<\/span>\r\n\r\n<span class=\"go\">This exports:<\/span>\r\n<span class=\"go\">  - all functions from posix, nt, os2, or ce, e.g. unlink, stat, etc.<\/span>\r\n<span class=\"go\">  - os.path is one of the modules posixpath, or ntpath<\/span>\r\n<span class=\"go\">  - os.name is 'posix', 'nt', 'os2', 'ce' or 'riscos'<\/span>\r\n<span class=\"go\">  - os.curdir is a string representing the current directory ('.' or ':')<\/span>\r\n<span class=\"go\">  - os.pardir is a string representing the parent directory ('..' or '::')<\/span>\r\n<span class=\"go\">  - os.sep is the (or a most common) pathname separator ('\/' or ':' or '\\\\')<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<ul class=\"simple\">\n<li>para un objeto clase: sus atributos, y recursivamente los atributos de sus clases bases.<\/li>\n<\/ul>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">(<\/span><span class=\"nb\">object<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"sd\">\"\"\"Clase que representa una Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"k\">def<\/span> <span class=\"fm\">__init__<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">,<\/span> <span class=\"n\">cedula<\/span><span class=\"p\">,<\/span> <span class=\"n\">nombre<\/span><span class=\"p\">,<\/span> <span class=\"n\">apellido<\/span><span class=\"p\">,<\/span> <span class=\"n\">sexo<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"sd\">\"\"\" Constructor de clase Persona \"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">cedula<\/span> <span class=\"o\">=<\/span> <span class=\"n\">cedula<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">nombre<\/span> <span class=\"o\">=<\/span> <span class=\"n\">nombre<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">apellido<\/span> <span class=\"o\">=<\/span> <span class=\"n\">apellido<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">sexo<\/span> <span class=\"o\">=<\/span> <span class=\"n\">sexo<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"k\">def<\/span> <span class=\"fm\">__str__<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"sd\">\"\"\"Devuelve una cadena representativa al Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"k\">return<\/span> <span class=\"s2\">\"<\/span><span class=\"si\">%s<\/span><span class=\"s2\">: <\/span><span class=\"si\">%s<\/span> <span class=\"si\">%s<\/span><span class=\"s2\">, <\/span><span class=\"si\">%s<\/span><span class=\"s2\">.\"<\/span> <span class=\"o\">%<\/span> <span class=\"p\">(<\/span>\r\n<span class=\"gp\">... <\/span>            <span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">cedula<\/span><span class=\"p\">),<\/span> <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">nombre<\/span><span class=\"p\">,<\/span>\r\n<span class=\"gp\">... <\/span>            <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">apellido<\/span><span class=\"p\">,<\/span> <span class=\"bp\">self<\/span><span class=\"o\">.<\/span><span class=\"n\">sexo<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"p\">)<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"k\">def<\/span> <span class=\"nf\">hablar<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">,<\/span> <span class=\"n\">mensaje<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"sd\">\"\"\"Mostrar mensaje de saludo de Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"nb\">print<\/span> <span class=\"n\">mensaje<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'type'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">vars<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">{'Persona': &lt;class '__main__.Persona'&gt;,<\/span>\r\n<span class=\"go\">'__builtins__': &lt;module '__builtin__' (built-in)&gt;,<\/span>\r\n<span class=\"go\">'__package__': None, '__name__': '__main__',<\/span>\r\n<span class=\"go\">'os': &lt;module 'os' from '\/usr\/lib\/python2.7\/os.pyc'&gt;,<\/span>\r\n<span class=\"go\">'__doc__': None}<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dir<\/span><span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">['__class__', '__delattr__', '__dict__', '__doc__',<\/span>\r\n<span class=\"go\">'__format__', '__getattribute__', '__hash__',<\/span>\r\n<span class=\"go\">'__init__', '__module__', '__new__', '__reduce__',<\/span>\r\n<span class=\"go\">'__reduce_ex__', '__repr__', '__setattr__',<\/span>\r\n<span class=\"go\">'__sizeof__', '__str__', '__subclasshook__',<\/span>\r\n<span class=\"go\">'__weakref__', 'hablar']<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">Persona<\/span><span class=\"o\">.<\/span><span class=\"vm\">__dict__<\/span>\r\n<span class=\"go\">dict_proxy({'__module__': '__main__',<\/span>\r\n<span class=\"go\">'__str__': &lt;function __str__ at 0x7fab8aaad758&gt;,<\/span>\r\n<span class=\"go\">'__dict__': &lt;attribute '__dict__' of 'Persona' objects&gt;,<\/span>\r\n<span class=\"go\">'hablar': &lt;function hablar at 0x7fab8aaad7d0&gt;,<\/span>\r\n<span class=\"go\">'__weakref__': &lt;attribute '__weakref__' of 'Persona' objects&gt;,<\/span>\r\n<span class=\"go\">'__doc__': ' Clase que representa una persona. ',<\/span>\r\n<span class=\"go\">'__init__': &lt;function __init__ at 0x7fab8aaad6e0&gt;})<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">Persona<\/span><span class=\"o\">.<\/span><span class=\"vm\">__doc__<\/span>\r\n<span class=\"go\">' Clase que representa una persona. '<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">Persona<\/span><span class=\"o\">.<\/span><span class=\"fm\">__init__<\/span><span class=\"o\">.<\/span><span class=\"vm\">__doc__<\/span>\r\n<span class=\"go\">' Constructor de clase Persona '<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">Persona<\/span><span class=\"o\">.<\/span><span class=\"n\">hablar<\/span><span class=\"o\">.<\/span><span class=\"vm\">__doc__<\/span>\r\n<span class=\"go\">' Mostrar mensaje de saludo de Persona '<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<ul class=\"simple\">\n<li>para cualquier otro objecto: sus atributos, sus atributos de clases, y recursivamente los atributos de esas clases bases de las clases.<\/li>\n<\/ul>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'type'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dir<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">['__abs__', '__add__', '__and__', '__class__', '__cmp__',<\/span>\r\n<span class=\"go\">'__coerce__', '__delattr__', '__div__', '__divmod__',<\/span>\r\n<span class=\"go\">'__doc__', '__float__', '__floordiv__', '__format__',<\/span>\r\n<span class=\"go\">'__getattribute__', '__getnewargs__', '__hash__', '__hex__',<\/span>\r\n<span class=\"go\">'__index__', '__init__', '__int__', '__invert__', '__long__',<\/span>\r\n<span class=\"go\">'__lshift__', '__mod__', '__mul__', '__neg__', '__new__',<\/span>\r\n<span class=\"go\">'__nonzero__', '__oct__', '__or__', '__pos__', '__pow__',<\/span>\r\n<span class=\"go\">'__radd__', '__rand__', '__rdiv__', '__rdivmod__', '__reduce__',<\/span>\r\n<span class=\"go\">'__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__',<\/span>\r\n<span class=\"go\">'__rmod__', '__rmul__', '__ror__', '__rpow__', '__rrshift__',<\/span>\r\n<span class=\"go\">'__rshift__', '__rsub__', '__rtruediv__', '__rxor__',<\/span>\r\n<span class=\"go\">'__setattr__', '__sizeof__', '__str__', '__sub__',<\/span>\r\n<span class=\"go\">'__subclasshook__', '__truediv__', '__trunc__', '__xor__',<\/span>\r\n<span class=\"go\">'bit_length', 'conjugate', 'denominator', 'imag', 'numerator',<\/span>\r\n<span class=\"go\">'real']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"eval\" class=\"section\"><span id=\"python-fun-eval\"><\/span><\/p>\n<h3>eval()<\/h3>\n<p>Eval\u00faa una cadena como una expresi\u00f3n:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">eval<\/span><span class=\"p\">(<\/span><span class=\"s1\">'2 + 5'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">7<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Ademas si se han definido anteriormente variables las acepta como par\u00e1metros:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">numero<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">10<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">eval<\/span><span class=\"p\">(<\/span><span class=\"s1\">'numero * 10 - 5'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">95<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"execfile\" class=\"section\"><span id=\"python-fun-execfile\"><\/span><\/p>\n<h3>execfile()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">execfile()<\/span><\/code>\u00a0lee y ejecuta un script Python desde un archivo. Los\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">globals<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">locals<\/span><\/code>\u00a0son diccionarios, por defecto a los actuales\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">globals<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">locals<\/span><\/code>. Si solamente\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">globals<\/span><\/code>\u00a0es dado,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">locals<\/span><\/code>\u00a0es por defecto a la misma.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">execfile<\/span><span class=\"p\">(<\/span><span class=\"s1\">'.\/holamundo.py'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Hola Mundo<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"globals\" class=\"section\"><span id=\"python-fun-globals\"><\/span><\/p>\n<h3>globals()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">globals()<\/span><\/code>\u00a0devuelve un diccionario conteniendo \u00e1mbito actual global de las variables.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">globals<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">{'__builtins__': &lt;module '__builtin__' (built-in)&gt;,<\/span>\r\n<span class=\"go\">'__package__': None, '__name__': '__main__', '__doc__': None}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">globals()<\/span><\/code>\u00a0puede ser usada para devolver los nombres en el\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">namespaces<\/span><\/code>\u00a0global dependiendo en la locaci\u00f3n desde donde ella es llamada.<\/p>\n<p>Si la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">globals()<\/span><\/code>\u00a0es llamada desde una funci\u00f3n, eso devolver\u00e1 todos los nombres que pueden ser accesibles globalmente desde esa funci\u00f3n.<\/p>\n<p>El tipo de dato devuelto por funci\u00f3n es un tipo diccionario. Por lo tanto, los nombres pueden ser extra\u00eddos usando la funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">keys()<\/span><\/code>.<\/p>\n<\/div>\n<div id=\"help\" class=\"section\"><span id=\"python-fun-help\"><\/span><\/p>\n<h3>help()<\/h3>\n<p>Invoca el men\u00fa de ayuda del int\u00e9rprete de Python:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">help<\/span><span class=\"p\">()<\/span>\r\n\r\n<span class=\"go\">Welcome to Python 2.7!  This is the online help utility.<\/span>\r\n\r\n<span class=\"go\">If this is your first time using Python, you should definitely check out<\/span>\r\n<span class=\"go\">the tutorial on the Internet at https:\/\/docs.python.org\/2.7\/tutorial\/.<\/span>\r\n\r\n<span class=\"go\">Enter the name of any module, keyword, or topic to get help on writing<\/span>\r\n<span class=\"go\">Python programs and using Python modules.  To quit this help utility and<\/span>\r\n<span class=\"go\">return to the interpreter, just type \"quit\".<\/span>\r\n\r\n<span class=\"go\">To get a list of available modules, keywords, or topics, type \"modules\",<\/span>\r\n<span class=\"go\">\"keywords\", or \"topics\".  Each module also comes with a one-line summary<\/span>\r\n<span class=\"go\">of what it does; to list the modules whose summaries contain a given word<\/span>\r\n<span class=\"go\">such as \"spam\", type \"modules spam\".<\/span>\r\n\r\n<span class=\"go\">help&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"python-fun-id\" class=\"section\"><span id=\"id\"><\/span><\/p>\n<h3>id()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">id()<\/span><\/code>\u00a0devuelve la identidad de un objecto. Esto garantiza ser el \u00fanico entre objetos simult\u00e1neamente existentes. (Sugerencia: es la direcci\u00f3n de memoria del objeto).<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">lista<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">lista<\/span>\r\n<span class=\"go\">[0, 1, 2, 3, 4]<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">id<\/span><span class=\"p\">(<\/span><span class=\"n\">lista<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">139703096777904<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"len\" class=\"section\"><span id=\"python-fun-len\"><\/span><\/p>\n<h3>len()<\/h3>\n<p>Devuelve el n\u00famero de elementos de un tipo de secuencia o colecci\u00f3n.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">len<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"leonardo caballero\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">18<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"license\" class=\"section\"><span id=\"python-fun-license\"><\/span><\/p>\n<h3>license()<\/h3>\n<p>Imprime el texto de la licencia.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">license<\/span>\r\n<span class=\"go\">Type license() to see the full license text<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">license<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">A. HISTORY OF THE SOFTWARE<\/span>\r\n<span class=\"go\">==========================<\/span>\r\n\r\n<span class=\"go\">Python was created in the early 1990s by Guido van Rossum at Stichting<\/span>\r\n<span class=\"go\">Mathematisch Centrum (CWI, see http:\/\/www.cwi.nl) in the Netherlands<\/span>\r\n<span class=\"go\">as a successor of a language called ABC.  Guido remains Python's<\/span>\r\n<span class=\"go\">principal author, although it includes many contributions from others.<\/span>\r\n\r\n<span class=\"go\">In 1995, Guido continued his work on Python at the Corporation for<\/span>\r\n<span class=\"go\">National Research Initiatives (CNRI, see http:\/\/www.cnri.reston.va.us)<\/span>\r\n<span class=\"go\">in Reston, Virginia where he released several versions of the<\/span>\r\n<span class=\"go\">software.<\/span>\r\n\r\n<span class=\"go\">In May 2000, Guido and the Python core development team moved to<\/span>\r\n<span class=\"go\">BeOpen.com to form the BeOpen PythonLabs team.  In October of the same<\/span>\r\n<span class=\"go\">year, the PythonLabs team moved to Digital Creations (now Zope<\/span>\r\n<span class=\"go\">Corporation, see http:\/\/www.zope.com).  In 2001, the Python Software<\/span>\r\n<span class=\"go\">Foundation (PSF, see https:\/\/www.python.org\/psf\/) was formed, a<\/span>\r\n<span class=\"go\">non-profit organization created specifically to own Python-related<\/span>\r\n<span class=\"go\">Intellectual Property.  Zope Corporation is a sponsoring member of<\/span>\r\n<span class=\"go\">the PSF.<\/span>\r\n\r\n<span class=\"go\">All Python releases are Open Source (see http:\/\/www.opensource.org for<\/span>\r\n<span class=\"go\">Hit Return for more, or q (and Return) to quit:<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"locals\" class=\"section\"><span id=\"python-fun-locals\"><\/span><\/p>\n<h3>locals()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">locals()<\/span><\/code>\u00a0devuelve un diccionario conteniendo \u00e1mbito actual local de las variables.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">locals<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">{'__builtins__': &lt;module '__builtin__' (built-in)&gt;,<\/span>\r\n<span class=\"go\">'__package__': None, '__name__': '__main__', '__doc__': None}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">locals()<\/span><\/code>\u00a0puede ser usadas para devolver los nombres en el\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">namespaces<\/span><\/code>\u00a0local dependiendo en la locaci\u00f3n desde donde ella es llamada.<\/p>\n<p>Si la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">locals()<\/span><\/code>\u00a0es llamada desde una funci\u00f3n, eso devolver\u00e1 todos los nombres que pueden ser accesibles localmente desde esa funci\u00f3n.<\/p>\n<p>El tipo de dato devuelto por la funci\u00f3n es un tipo diccionario. Por lo tanto, los nombres pueden ser extra\u00eddos usando la funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">keys()<\/span><\/code>.<\/p>\n<\/div>\n<div id=\"open\" class=\"section\"><span id=\"python-fun-open\"><\/span><\/p>\n<h3>open()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">open()<\/span><\/code>\u00a0es definida dentro del modulo integrado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">io<\/span><\/code>, esta le permite\u00a0<span class=\"std std-ref\">abrir un archivo<\/span>\u00a0usando el tipo objeto\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">file<\/span><\/code>, devuelve un objeto del tipo\u00a0<span class=\"std std-ref\">file<\/span>\u00a0(ej.\u00a0<em>archivo<\/em>), y se llama habitualmente con de dos a tres argumentos:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"n\">file<\/span><span class=\"p\">(<\/span><span class=\"n\">nombre<\/span><span class=\"p\">[,<\/span> <span class=\"n\">modo<\/span><span class=\"p\">[,<\/span> <span class=\"n\">buffering<\/span><span class=\"p\">]])<\/span> <span class=\"o\">-&gt;<\/span> <span class=\"n\">objeto<\/span> <span class=\"n\">archivo<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Los argumentos son:<\/p>\n<ul>\n<li>\n<p class=\"first\"><code class=\"docutils literal notranslate\"><span class=\"pre\">nombre<\/span><\/code>, es una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0que indica el\u00a0<em>nombre de archivo<\/em>\u00a0(incluso ruta relativa o absoluta).<\/p>\n<\/li>\n<li>\n<p class=\"first\"><code class=\"docutils literal notranslate\"><span class=\"pre\">modo<\/span><\/code>, es una cadena de unos pocos caracteres describiendo la forma en la que se usar\u00e1 el archivo, como se indica a continuaci\u00f3n:<\/p>\n<table class=\"docutils\" border=\"1\">\n<colgroup>\n<col width=\"14%\" \/>\n<col width=\"86%\" \/><\/colgroup>\n<tbody valign=\"top\">\n<tr class=\"row-odd\">\n<td><strong>Modo<\/strong><\/td>\n<td><strong>Notas<\/strong><\/td>\n<\/tr>\n<tr class=\"row-even\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">r<\/span><\/code><\/td>\n<td>el archivo se abre en modo de solo lectura, no se puede escribir (argumento por defecto).<\/td>\n<\/tr>\n<tr class=\"row-odd\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">w<\/span><\/code><\/td>\n<td>modo de solo escritura (si existe un archivo con el mismo nombre, se borra).<\/td>\n<\/tr>\n<tr class=\"row-even\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">a<\/span><\/code><\/td>\n<td>modo de agregado (<code class=\"docutils literal notranslate\"><span class=\"pre\">append<\/span><\/code>), los datos escritos se agregan al final del archivo.<\/td>\n<\/tr>\n<tr class=\"row-odd\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">r+<\/span><\/code><\/td>\n<td>el archivo se abre para lectura y escritura al mismo tiempo.<\/td>\n<\/tr>\n<tr class=\"row-even\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">b<\/span><\/code><\/td>\n<td>el archivo se abre en modo binario, para almacenar cualquier cosa que no sea texto.<\/td>\n<\/tr>\n<tr class=\"row-odd\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">U<\/span><\/code><\/td>\n<td>el archivo se abre con soporte a nueva linea universal, cualquier fin de linea ingresada sera como un\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">\\n<\/span><\/code>\u00a0en Python.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>\n<p class=\"first\"><code class=\"docutils literal notranslate\"><span class=\"pre\">buffering<\/span><\/code>, si este argumento es dado, 0 significa sin b\u00fafer, 1 significa b\u00fafer de l\u00ednea y los n\u00fameros m\u00e1s grandes especifican el tama\u00f1o del b\u00fafer.<\/p>\n<\/li>\n<\/ul>\n<p>Para crear y abrir un archivo, seria as\u00ed:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">archivo<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">open<\/span><span class=\"p\">(<\/span><span class=\"s1\">'datos.txt'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'w'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">archivo<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'file'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>El archivo ser\u00e1 creado si no existe cuando es abierto para escribir o agregar data. Es archivo sera truncado cuando es abierto para escritura.<\/p>\n<p>Agregue una \u201cU\u201d a modo para abrir el archivo para la entrada con soporte de nueva l\u00ednea universal. Cualquier l\u00ednea que termine en el archivo de entrada se ver\u00e1 como \u201cn\u201d en Python. Adem\u00e1s, un archivo as\u00ed abierto gana el atributo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">newlines<\/span><\/code>; el valor para este atributo es uno de Ninguno (a\u00fan no se ha le\u00eddo una nueva l\u00ednea),\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">\\r<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">\\n<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">\\r\\n<\/span><\/code>\u00a0o una tupla que contiene todos los tipos de nueva l\u00ednea que se han visto.<\/p>\n<div class=\"admonition tip\">\n<p class=\"first admonition-title\">Truco<\/p>\n<p>Ver para futura informaci\u00f3n desde el\u00a0<span class=\"std std-ref\">modo interactivo<\/span>\u00a0Python, lo siguiente:<\/p>\n<div class=\"last highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">file<\/span><span class=\"o\">.<\/span><span class=\"vm\">__doc__<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"range\" class=\"section\"><span id=\"python-fun-range\"><\/span><\/p>\n<h3>range()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">range()<\/span><\/code>\u00a0devuelve una lista conteniendo una progresi\u00f3n aritm\u00e9tica de enteros.<\/p>\n<p>range(inicio, detener[, paso]) -&gt; lista de enteros<\/p>\n<blockquote>\n<div>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">3<\/span><span class=\"p\">,<\/span><span class=\"mi\">9<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">[3, 4, 5, 6, 7, 8]<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/blockquote>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">range(i,<\/span>\u00a0<span class=\"pre\">j)<\/span><\/code>\u00a0devuelve\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">[i,<\/span>\u00a0<span class=\"pre\">i+1,<\/span>\u00a0<span class=\"pre\">i+2,<\/span>\u00a0<span class=\"pre\">...,<\/span>\u00a0<span class=\"pre\">j-1]<\/span><\/code>; inicia (!) por defecto en\u00a0<strong>0<\/strong>.<\/p>\n<p>Cuando el\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">paso<\/span><\/code>\u00a0es definido como un tercer argumento, ese especifica el incremento (o decremento).<\/p>\n<blockquote>\n<div>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">3<\/span><span class=\"p\">,<\/span><span class=\"mi\">9<\/span><span class=\"p\">,<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">[3, 5, 7]<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/blockquote>\n<p>En el ejemplo anterior, la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">range(3,9,2)<\/span><\/code>\u00a0devuelve\u00a0<strong>[3, 5, 7]<\/strong>, es decir, el rango inicia en\u00a0<strong>3<\/strong>\u00a0y termina en\u00a0<strong>9<\/strong>\u00a0incrementando cada\u00a0<strong>2<\/strong>\u00a0n\u00fameros.<\/p>\n<p>range(detener) -&gt; lista de enteros<\/p>\n<blockquote>\n<div>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">[0, 1, 2, 3]<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/blockquote>\n<p>En el ejemplo anterior, la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">range(4)<\/span><\/code>\u00a0devuelve\u00a0<strong>[0, 1, 2, 3]<\/strong>. \u00a1El punto final es omitido! Hay exactamente los indices validos para una lista de\u00a0<strong>4<\/strong>\u00a0elementos.<\/p>\n<\/div>\n<div id=\"reload\" class=\"section\"><span id=\"python-fun-reload\"><\/span><\/p>\n<h3>reload()<\/h3>\n<p>Cuando el modulo es importado dentro de un script, el c\u00f3digo en la porci\u00f3n del nivel superior de un modulo es ejecutado solamente una vez.<\/p>\n<p>Por lo tanto, si usted quiere volver a ejecutar la porci\u00f3n del nivel superior el c\u00f3digo de un modulo, usted puede usar la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">reload()<\/span><\/code>. Esta funci\u00f3n importa otra vez un modulo previamente importado. La sintaxis de la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">reload()<\/span><\/code>\u00a0es la siguiente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">reload<\/span><span class=\"p\">(<\/span><span class=\"n\">module_name<\/span><span class=\"p\">)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Aqu\u00ed,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">module_name<\/span><\/code>\u00a0es el nombre del modulo que usted quiere volver a cargar y no la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0contendiente el nombre del modulo. Por ejemplo, para recargar el modulo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">clases.py<\/span><\/code>, debe hacer lo siguiente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kn\">import<\/span> <span class=\"nn\">clases<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">reload<\/span><span class=\"p\">(<\/span><span class=\"n\">clases<\/span><span class=\"p\">)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"xrange\" class=\"section\"><span id=\"python-fun-xrange\"><\/span><\/p>\n<h3>xrange()<\/h3>\n<p>El tipo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">xrange<\/span><\/code>\u00a0es un tipo secuencia inmutable utilizada normalmente en bucles. La ventaja de la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">xrange()<\/span><\/code>\u00a0sobre la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">range()<\/span><\/code>, es que devuelve un objeto\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">xrange<\/span><\/code>\u00a0el cual ocupa siempre la misma cantidad de memoria, independientemente del rango el cual represente.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">for<\/span> <span class=\"n\">item<\/span> <span class=\"ow\">in<\/span> <span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"nb\">print<\/span> <span class=\"n\">item<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"go\">0<\/span>\r\n<span class=\"go\">1<\/span>\r\n<span class=\"go\">2<\/span>\r\n<span class=\"go\">3<\/span>\r\n<span class=\"go\">4<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">for<\/span> <span class=\"n\">item<\/span> <span class=\"ow\">in<\/span> <span class=\"n\">xrange<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"nb\">print<\/span> <span class=\"n\">item<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"go\">0<\/span>\r\n<span class=\"go\">1<\/span>\r\n<span class=\"go\">2<\/span>\r\n<span class=\"go\">3<\/span>\r\n<span class=\"go\">4<\/span>\r\n<span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Como la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">xrange()<\/span><\/code>, devuelve un objeto el cual genera los n\u00fameros en el rango a demanda. Para bucles, esto es un poco mas r\u00e1pido que la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">range()<\/span><\/code>\u00a0y m\u00e1s eficiente en la memoria.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">xrange<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">xrange(5)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">xrange<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'xrange'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dir<\/span><span class=\"p\">(<\/span><span class=\"n\">xrange<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">['__class__', '__delattr__', '__doc__', '__format__',<\/span>\r\n<span class=\"go\">'__getattribute__', '__getitem__', '__hash__', '__init__',<\/span>\r\n<span class=\"go\">'__iter__', '__len__', '__new__', '__reduce__', '__reduce_ex__',<\/span>\r\n<span class=\"go\">'__repr__', '__reversed__', '__setattr__', '__sizeof__',<\/span>\r\n<span class=\"go\">'__str__', '__subclasshook__']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La ventaja de la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">xrange()<\/span><\/code>\u00a0es\u00a0<em>excepto<\/em>\u00a0en hardware impedido en cuesti\u00f3n de memoria (por ejemplo, MS-DOS) o cuando nunca se utilizan todos los elementos del rango (por ejemplo, porque se suele interrumpir la ejecuci\u00f3n del bucle con la sentencia\u00a0<span class=\"std std-ref\">break<\/span>).<\/p>\n<\/div>\n<div id=\"type\" class=\"section\"><span id=\"python-fun-type\"><\/span><\/p>\n<h3>type()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">type()<\/span><\/code>\u00a0devuelve el tipo del objeto que recibe como argumento.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'int'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"mf\">2.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'float'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'bool'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Hola Mundo\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'type'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">str<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'type'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"kc\">None<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'NoneType'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">object<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'type'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kn\">import<\/span> <span class=\"nn\">os<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">os<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'module'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">format<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'builtin_function_or_method'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<div class=\"admonition tip\">\n<p class=\"first admonition-title\">Truco<\/p>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">type()<\/span><\/code>\u00a0devuelve el tipo del objeto, en base al modulo integrado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">types<\/span><\/code>, el cual define los nombres para todos los s\u00edmbolos tipo conocidos en el interprete est\u00e1ndar.<\/p>\n<div class=\"last highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kn\">import<\/span> <span class=\"nn\">types<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">help<\/span><span class=\"p\">(<\/span><span class=\"n\">types<\/span><span class=\"p\">)<\/span>\r\n\r\n<span class=\"go\">Help on module types:<\/span>\r\n\r\n<span class=\"go\">NAME<\/span>\r\n<span class=\"go\">    types - Define names for all type symbols known in the standard interpreter.<\/span>\r\n\r\n<span class=\"go\">FILE<\/span>\r\n<span class=\"go\">    \/usr\/lib\/python2.7\/types.py<\/span>\r\n\r\n<span class=\"go\">MODULE DOCS<\/span>\r\n<span class=\"go\">    https:\/\/docs.python.org\/library\/types<\/span>\r\n\r\n<span class=\"go\">DESCRIPTION<\/span>\r\n<span class=\"go\">    Types that are part of optional modules (e.g. array) are not listed.<\/span>\r\n\r\n<span class=\"go\">CLASSES<\/span>\r\n<span class=\"go\">    __builtin__.basestring(__builtin__.object)<\/span>\r\n<span class=\"go\">        __builtin__.str<\/span>\r\n<span class=\"go\">        __builtin__.unicode<\/span>\r\n\r\n<span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"vars\" class=\"section\"><span id=\"python-fun-vars\"><\/span><\/p>\n<h3>vars()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">vars()<\/span><\/code>\u00a0devuelve un diccionario conteniendo \u00e1mbito actual de las variables.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">vars<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">{'__builtins__': &lt;module '__builtin__' (built-in)&gt;, '__package__':<\/span>\r\n<span class=\"go\">None, '__name__': '__main__', '__doc__': None}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">vars()<\/span><\/code>\u00a0sin argumentos, equivale a la funci\u00f3n\u00a0<span class=\"std std-ref\">locals()<\/span>. Si se llama con un argumento equivale a la sentencia\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">object.__dict__<\/span><\/code>.<\/p>\n<hr class=\"docutils\" \/>\n<\/div>\n<\/div>\n<div id=\"funciones-de-entrada-y-salida\" class=\"section\"><span id=\"python-fun-builtins-es\"><\/span><\/p>\n<h2>Funciones de entrada y salida<\/h2>\n<p>Las funciones de tipos num\u00e9ricos se describen a continuaci\u00f3n:<\/p>\n<div id=\"input\" class=\"section\"><span id=\"python-fun-input\"><\/span><\/p>\n<h3>input()<\/h3>\n<p>Equivalente a la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">eval(raw_input(prompt))<\/span><\/code><\/p>\n<p>Lee una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0desde la entrada est\u00e1ndar.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: 2<\/span>\r\n<span class=\"go\">2<\/span>\r\n<span class=\"go\">&lt;type 'int'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: 23.4<\/span>\r\n<span class=\"go\">23.4<\/span>\r\n<span class=\"go\">&lt;type 'float'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: 23L<\/span>\r\n<span class=\"go\">23L<\/span>\r\n<span class=\"go\">&lt;type 'long'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el caso que quiera ingresar una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0desde la entrada est\u00e1ndar usando la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">input()<\/span><\/code>, debe colocar la cadena de caracteres entre comillas simples o dobles, como el siguiente ejemplo:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: leonardo<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n  File <span class=\"nb\">\"&lt;string&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">NameError<\/span>: <span class=\"n\">name 'leonardo' is not defined<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: \"leonardo\"<\/span>\r\n<span class=\"go\">'leonardo'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: leonardo caballero<\/span>\r\n  File <span class=\"nb\">\"&lt;string&gt;\"<\/span>, line <span class=\"m\">1<\/span>\r\n    <span class=\"n\">leonardo<\/span> <span class=\"n\">caballero<\/span>\r\n                     <span class=\"o\">^<\/span>\r\n<span class=\"gr\">SyntaxError<\/span>: <span class=\"n\">unexpected EOF while parsing<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: \"leonardo caballero\"<\/span>\r\n<span class=\"go\">'leonardo caballero'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"raw-input\" class=\"section\"><span id=\"python-fun-raw-input\"><\/span><\/p>\n<h3>raw_input()<\/h3>\n<p>Lee una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0desde la entrada est\u00e1ndar. La nueva l\u00ednea final es despojada. Si el usuario indica un EOF (<em>Unix<\/em>:\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Ctl-D<\/span><\/code>,\u00a0<em>Windows<\/em>:\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Ctl-Z+Return<\/span><\/code>), lanza una excepci\u00f3n\u00a0<span class=\"std std-ref\">EOFError<\/span>. En sistemas Unix, la librer\u00eda\u00a0<strong>GNU readline<\/strong>\u00a0es usada si es habilitada. El\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">prompt<\/span><\/code>\u00a0de la cadena de caracteres, si es dado, es impreso sin una nueva l\u00ednea final antes de leer.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: 2<\/span>\r\n<span class=\"go\">'2'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: 2.3<\/span>\r\n<span class=\"go\">'2.3'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: 23L<\/span>\r\n<span class=\"go\">'23L'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: leonardo<\/span>\r\n<span class=\"go\">'leonardo'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: \"leonardo\"<\/span>\r\n<span class=\"go\">'\"leonardo\"'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: leonardo caballero<\/span>\r\n<span class=\"go\">'leonardo caballero'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">dato<\/span> <span class=\"o\">=<\/span> <span class=\"n\">raw_input<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Por favor, ingresa un dato: \"<\/span><span class=\"p\">);<\/span> <span class=\"n\">dato<\/span><span class=\"p\">;<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">dato<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">Por favor, ingresa un dato: \"leonardo caballero\"<\/span>\r\n<span class=\"go\">'\"leonardo caballero\"'<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<hr class=\"docutils\" \/>\n<\/div>\n<\/div>\n<div id=\"funciones-numericas\" class=\"section\"><span id=\"python-fun-builtins-numericas\"><\/span><\/p>\n<h2>Funciones num\u00e9ricas<\/h2>\n<p>Las funciones de tipos num\u00e9ricos se describen a continuaci\u00f3n:<\/p>\n<div id=\"abs\" class=\"section\"><span id=\"python-fun-abs\"><\/span><\/p>\n<h3>abs()<\/h3>\n<p>Devuelve el valor absoluto de un n\u00famero (entero o de coma flotante).<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">abs<\/span><span class=\"p\">(<\/span><span class=\"mi\">3<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">3<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">abs<\/span><span class=\"p\">(<\/span><span class=\"o\">-<\/span><span class=\"mi\">3<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">3<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">abs<\/span><span class=\"p\">(<\/span><span class=\"o\">-<\/span><span class=\"mf\">2.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2.5<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"bin\" class=\"section\"><span id=\"python-fun-bin\"><\/span><\/p>\n<h3>bin()<\/h3>\n<p>Devuelve una representaci\u00f3n binaria de un\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>\u00a0o\u00a0<span class=\"std std-ref\">entero long<\/span>, es decir, lo convierte de entero a binario.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bin<\/span><span class=\"p\">(<\/span><span class=\"mi\">10<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'0b1010'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"cmp\" class=\"section\"><span id=\"python-fun-cmp\"><\/span><\/p>\n<h3>cmp()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">cmp()<\/span><\/code>\u00a0devuelve un valor negativo si\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">x&lt;y<\/span><\/code>, un valor cero si\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">x==y<\/span><\/code>, un valor positivo si\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">x&gt;y<\/span><\/code>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">cmp<\/span><span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">-1<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">cmp<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">,<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">cmp<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">,<\/span><span class=\"mi\">1<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">1<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"complex\" class=\"section\"><span id=\"python-fun-complex\"><\/span><\/p>\n<h3>complex()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">complex()<\/span><\/code>\u00a0devuelve un n\u00famero complejo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">complex<\/span><\/code>. Es un constructor, que crea un\u00a0<span class=\"std std-ref\">entero complex<\/span>\u00a0a partir de un\u00a0<span class=\"std std-ref\">entero<\/span>,\u00a0<span class=\"std std-ref\">entero long<\/span>,\u00a0<span class=\"std std-ref\">entero float<\/span>\u00a0(cadenas de caracteres formadas por n\u00fameros y hasta un punto), o una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0que sean coherentes con un n\u00famero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">complex<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(23+0j)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">complex<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"n\">L<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(23+0j)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">complex<\/span><span class=\"p\">(<\/span><span class=\"mf\">23.4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(23.4+0j)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">complex<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"23\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(23+0j)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">complex<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"23.6\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(23.6+0j)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">complex()<\/span><\/code>\u00a0s\u00f3lo procesa correctamente cadenas que contengan exclusivamente n\u00fameros.Si la cadena contiene cualquier otro car\u00e1cter, la funci\u00f3n devuelve una excepci\u00f3n\u00a0<span class=\"std std-ref\">ValueError<\/span>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">complex<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"qwerty\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">ValueError<\/span>: <span class=\"n\">complex() arg is a malformed string<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"divmod\" class=\"section\"><span id=\"python-fun-divmod\"><\/span><\/p>\n<h3>divmod()<\/h3>\n<p>Debe recibir dos argumentos num\u00e9ricos, y devuelve dos valores: resultado de la divisi\u00f3n entera, y el resto.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">divmod<\/span><span class=\"p\">(<\/span><span class=\"mi\">22<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(5, 2)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"float\" class=\"section\"><span id=\"python-fun-float\"><\/span><\/p>\n<h3>float()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">float()<\/span><\/code>\u00a0devuelve un n\u00famero coma flotante\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">float<\/span><\/code>. Es un constructor, que crea un\u00a0<span class=\"std std-ref\">coma flotante<\/span>\u00a0a partir de un\u00a0<span class=\"std std-ref\">entero<\/span>,\u00a0<span class=\"std std-ref\">entero long<\/span>,\u00a0<span class=\"std std-ref\">entero float<\/span>\u00a0(cadenas de caracteres formadas por n\u00fameros y hasta un punto) o una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0que sean coherentes con un n\u00famero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">float<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2.0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">float<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"n\">L<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">23.0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">float<\/span><span class=\"p\">(<\/span><span class=\"mf\">2.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2.5<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">float<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"2\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2.0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">float<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"2.5\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2.5<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"hex\" class=\"section\"><span id=\"python-fun-hex\"><\/span><\/p>\n<h3>hex()<\/h3>\n<p>Devuelve una representaci\u00f3n hexadecimal de un\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>\u00a0o\u00a0<span class=\"std std-ref\">entero long<\/span>, es decir, lo convierte de entero a hexadecimal.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hex<\/span><span class=\"p\">(<\/span><span class=\"mi\">10<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'0xa'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"int\" class=\"section\"><span id=\"python-fun-int\"><\/span><\/p>\n<h3>int()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">int()<\/span><\/code>\u00a0devuelve un n\u00famero entero. Es un constructor, que crea un\u00a0<span class=\"std std-ref\">entero<\/span>\u00a0a partir de un\u00a0<span class=\"std std-ref\">entero float<\/span>,\u00a0<span class=\"std std-ref\">entero complex<\/span>\u00a0o una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0que sean coherentes con un n\u00famero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"mf\">2.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Tambi\u00e9n puede convertir una cadena de caracteres a un n\u00famero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"23\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">23<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">int()<\/span><\/code>\u00a0s\u00f3lo procesa correctamente cadenas que contengan exclusivamente n\u00fameros. Si la cadena contiene cualquier otro car\u00e1cter, la funci\u00f3n devuelve una excepci\u00f3n\u00a0<span class=\"std std-ref\">ValueError<\/span>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"2.5\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">ValueError<\/span>: <span class=\"n\">invalid literal for int() with base 10: '2.5'<\/span>\r\n<span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"doscientos\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">ValueError<\/span>: <span class=\"n\">invalid literal for int() with base 10: 'doscientos'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"long\" class=\"section\"><span id=\"python-fun-long\"><\/span><\/p>\n<h3>long()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">long()<\/span><\/code>\u00a0devuelve un n\u00famero entero\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">long<\/span><\/code>. Es un constructor, que crea un\u00a0<span class=\"std std-ref\">entero long<\/span>\u00a0a partir de un\u00a0<span class=\"std std-ref\">entero<\/span>,\u00a0<span class=\"std std-ref\">entero float<\/span>\u00a0o una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0que sean coherentes con un n\u00famero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">long<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">23L<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">long<\/span><span class=\"p\">(<\/span><span class=\"mf\">23.4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">23L<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Tambi\u00e9n puede convertir una cadena de caracteres a un n\u00famero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">long<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"23\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">23<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">long()<\/span><\/code>\u00a0s\u00f3lo procesa correctamente cadenas que contengan exclusivamente n\u00fameros. Si la cadena contiene cualquier otro car\u00e1cter, la funci\u00f3n devuelve una excepci\u00f3n\u00a0<span class=\"std std-ref\">ValueError<\/span>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">long<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"23.4\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">ValueError<\/span>: <span class=\"n\">invalid literal for long() with base 10: '23.4'<\/span>\r\n<span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">long<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"23,4\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">ValueError<\/span>: <span class=\"n\">invalid literal for long() with base 10: '23,4'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"max\" class=\"section\"><span id=\"python-fun-max\"><\/span><\/p>\n<h3>max()<\/h3>\n<p>Si recibe m\u00e1s de un argumento, devuelve el mayor de ellos.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">max<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"p\">,<\/span> <span class=\"mi\">12<\/span><span class=\"p\">,<\/span> <span class=\"mi\">145<\/span><span class=\"p\">,<\/span> <span class=\"mi\">88<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">145<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">max<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"p\">,<\/span> <span class=\"mi\">12<\/span><span class=\"p\">,<\/span> <span class=\"mi\">145<\/span><span class=\"p\">,<\/span> <span class=\"mi\">88<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'int'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">max<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"a\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Z\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'a'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">max<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"a\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Z\"<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Si recibe un solo argumento, devuelve el mayor de sus elementos. Debe ser un objeto iterable; puede ser una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>, o alguno de los otros tipos de secuencia o colecci\u00f3n.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">max<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Hola, Plone\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'o'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">max<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Hola, Plone\"<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"min\" class=\"section\"><span id=\"python-fun-min\"><\/span><\/p>\n<h3>min()<\/h3>\n<p>Tiene un comportamiento similar a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">max()<\/span><\/code>, pero devuelve el m\u00ednimo.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">min<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"p\">,<\/span> <span class=\"mi\">12<\/span><span class=\"p\">,<\/span> <span class=\"mi\">145<\/span><span class=\"p\">,<\/span> <span class=\"mi\">88<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">12<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">min<\/span><span class=\"p\">(<\/span><span class=\"mi\">23<\/span><span class=\"p\">,<\/span> <span class=\"mi\">12<\/span><span class=\"p\">,<\/span> <span class=\"mi\">145<\/span><span class=\"p\">,<\/span> <span class=\"mi\">88<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'int'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">min<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Hola, Plone\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">' '<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">min<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Hola, Plone\"<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"pow\" class=\"section\"><span id=\"python-fun-pow\"><\/span><\/p>\n<h3>pow()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">pow()<\/span><\/code>\u00a0si recibe dos (02) argumentos, eleva el primero argumento a la potencia del segundo argumento.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">pow<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">8<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">pow<\/span><span class=\"p\">(<\/span><span class=\"mi\">10<\/span><span class=\"p\">,<\/span> <span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">100<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">pow<\/span><span class=\"p\">(<\/span><span class=\"mi\">10<\/span><span class=\"p\">,<\/span> <span class=\"o\">-<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">0.01<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Si recibe un tercer argumento opcional, \u00e9ste funciona como m\u00f3dulo.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">pow<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"reduce\" class=\"section\"><span id=\"python-fun-reduce\"><\/span><\/p>\n<h3>reduce()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">reduce()<\/span><\/code>\u00a0aplica una funci\u00f3n de dos argumentos de forma acumulativa a los elementos de un tipo de secuencia, de izquierda a derecha, para reducir la secuencia a un solo valor. La sintaxis seria la siguiente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">reduce<\/span><span class=\"p\">(<\/span><span class=\"n\">funcion<\/span><span class=\"p\">,<\/span> <span class=\"n\">secuencia<\/span><span class=\"p\">[,<\/span> <span class=\"n\">inicial<\/span><span class=\"p\">])<\/span> <span class=\"o\">-&gt;<\/span> <span class=\"n\">valor<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>A continuaci\u00f3n un ejemplo:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">reduce<\/span><span class=\"p\">(<\/span><span class=\"k\">lambda<\/span> <span class=\"n\">x<\/span><span class=\"p\">,<\/span> <span class=\"n\">y<\/span><span class=\"p\">:<\/span> <span class=\"n\">x<\/span> <span class=\"o\">+<\/span> <span class=\"n\">y<\/span><span class=\"p\">,<\/span> <span class=\"p\">[<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"mi\">2<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">,<\/span> <span class=\"mi\">5<\/span><span class=\"p\">])<\/span>\r\n<span class=\"go\">15<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"p\">((((<\/span><span class=\"mi\">1<\/span><span class=\"o\">+<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span><span class=\"o\">+<\/span><span class=\"mi\">3<\/span><span class=\"p\">)<\/span><span class=\"o\">+<\/span><span class=\"mi\">4<\/span><span class=\"p\">)<\/span><span class=\"o\">+<\/span><span class=\"mi\">5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">15<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior, calcula el siguiente calculo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">((((1+2)+3)+4)+5)<\/span><\/code>.<\/p>\n<p>Si el argumento\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">inicial<\/span><\/code>\u00a0est\u00e1 presente, se coloca antes de los elementos de la secuencia en el c\u00e1lculo y sirve como valor predeterminado cuando la secuencia est\u00e1 vac\u00eda.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">reduce<\/span><span class=\"p\">(<\/span><span class=\"k\">lambda<\/span> <span class=\"n\">x<\/span><span class=\"p\">,<\/span> <span class=\"n\">y<\/span><span class=\"p\">:<\/span> <span class=\"n\">x<\/span> <span class=\"o\">+<\/span> <span class=\"n\">y<\/span><span class=\"p\">,<\/span> <span class=\"p\">[<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"mi\">2<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">,<\/span> <span class=\"mi\">5<\/span><span class=\"p\">],<\/span> <span class=\"mi\">5<\/span> <span class=\"o\">*<\/span> <span class=\"mi\">5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">40<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior, la funci\u00f3n, usada es\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">lambda<\/span>\u00a0<span class=\"pre\">x,<\/span>\u00a0<span class=\"pre\">y:<\/span>\u00a0<span class=\"pre\">x<\/span>\u00a0<span class=\"pre\">+<\/span>\u00a0<span class=\"pre\">y<\/span><\/code>, la secuencia es la lista\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">[1,<\/span>\u00a0<span class=\"pre\">2,<\/span>\u00a0<span class=\"pre\">3,<\/span>\u00a0<span class=\"pre\">4,<\/span>\u00a0<span class=\"pre\">5]<\/span><\/code>\u00a0y el argumento\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">inicial<\/span><\/code>\u00a0es\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">5<\/span>\u00a0<span class=\"pre\">*<\/span>\u00a0<span class=\"pre\">5<\/span><\/code><\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">reduce<\/span><span class=\"p\">(<\/span><span class=\"k\">lambda<\/span> <span class=\"n\">x<\/span><span class=\"p\">,<\/span> <span class=\"n\">y<\/span><span class=\"p\">:<\/span> <span class=\"n\">x<\/span> <span class=\"o\">+<\/span> <span class=\"n\">y<\/span><span class=\"p\">,<\/span> <span class=\"p\">[<\/span><span class=\"mi\">0<\/span><span class=\"p\">,<\/span> <span class=\"mi\">0<\/span><span class=\"p\">,<\/span> <span class=\"mi\">0<\/span><span class=\"p\">,<\/span> <span class=\"mi\">0<\/span><span class=\"p\">,<\/span> <span class=\"mi\">0<\/span><span class=\"p\">],<\/span> <span class=\"mi\">5<\/span> <span class=\"o\">*<\/span> <span class=\"mi\">5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">25<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior, la funci\u00f3n, usada es\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">lambda<\/span>\u00a0<span class=\"pre\">x,<\/span>\u00a0<span class=\"pre\">y:<\/span>\u00a0<span class=\"pre\">x<\/span>\u00a0<span class=\"pre\">+<\/span>\u00a0<span class=\"pre\">y<\/span><\/code>, la secuencia es la lista\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">[0,<\/span>\u00a0<span class=\"pre\">0,<\/span>\u00a0<span class=\"pre\">0,<\/span>\u00a0<span class=\"pre\">0,<\/span>\u00a0<span class=\"pre\">0]<\/span><\/code>\u00a0y el argumento\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">inicial<\/span><\/code>\u00a0es\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">5<\/span>\u00a0<span class=\"pre\">*<\/span>\u00a0<span class=\"pre\">5<\/span><\/code><\/p>\n<\/div>\n<div id=\"round\" class=\"section\"><span id=\"python-fun-round\"><\/span><\/p>\n<h3>round()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">round()<\/span><\/code>\u00a0redondea un n\u00famero flotante a una precisi\u00f3n dada en d\u00edgitos decimal (por defecto 0 d\u00edgitos). Esto siempre devuelve un n\u00famero flotante. La precisi\u00f3n tal vez sea negativa.<\/p>\n<p>En el siguiente ejemplo redondeo de un n\u00famero flotante a entero, mayor o igual a\u00a0<em>.5<\/em>\u00a0al alza:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">round<\/span><span class=\"p\">(<\/span><span class=\"mf\">5.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">6.0<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En este otro ejemplo redondeo de un n\u00famero flotante a entero, menor de\u00a0<em>.5<\/em>\u00a0a la baja:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">round<\/span><span class=\"p\">(<\/span><span class=\"mf\">5.4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">5.0<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"sum\" class=\"section\"><span id=\"python-fun-sum\"><\/span><\/p>\n<h3>sum()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">sum()<\/span><\/code>\u00a0devuelve una lista ordenada de los elementos de la secuencia que recibe como argumento (lista o cadena). La secuencia original no es modificada.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">lista<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span> <span class=\"mi\">2<\/span><span class=\"p\">,<\/span> <span class=\"mi\">3<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">]<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">sum<\/span><span class=\"p\">(<\/span><span class=\"n\">lista<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">10<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"oct\" class=\"section\"><span id=\"python-fun-oct\"><\/span><\/p>\n<h3>oct()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">oct()<\/span><\/code>\u00a0convierte un n\u00famero entero en una cadena en base octal, antecedida del prefijo\u00a0<em>\u201c0\u201d<\/em>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">oct<\/span><span class=\"p\">(<\/span><span class=\"mi\">8<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'010'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">oct<\/span><span class=\"p\">(<\/span><span class=\"mi\">123<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'0173'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<hr class=\"docutils\" \/>\n<\/div>\n<\/div>\n<div id=\"funciones-de-booleanos\" class=\"section\"><span id=\"python-fun-builtins-bool\"><\/span><\/p>\n<h2>Funciones de booleanos<\/h2>\n<p>Las funciones de tipos\u00a0<span class=\"std std-ref\">booleanos<\/span>\u00a0se describen a continuaci\u00f3n:<\/p>\n<div id=\"bool\" class=\"section\"><span id=\"python-fun-bool\"><\/span><\/p>\n<h3>bool()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">bool()<\/span><\/code>, es un constructor, el cual crea un tipo de datos\u00a0<span class=\"std std-ref\">booleanos<\/span>, devuelve un tipo booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0cuando el argumento dado es\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>, de lo contrario\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Convertir desde un tipo\u00a0<span class=\"std std-ref\">entero<\/span>\u00a0a tipo\u00a0<em>booleano<\/em>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"mi\">0<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"mi\">1<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Convertir desde un tipo\u00a0<span class=\"std std-ref\">entero float<\/span>\u00a0de forma recursiva usando la funci\u00f3n\u00a0<span class=\"std std-ref\">int()<\/span>\u00a0a tipo\u00a0<em>booleano<\/em>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"mf\">0.1<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"mf\">1.0<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Convertir desde un tipo\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0de forma recursiva usando la funci\u00f3n\u00a0<span class=\"std std-ref\">str()<\/span>\u00a0y la funci\u00f3n\u00a0<span class=\"std std-ref\">int()<\/span>\u00a0a tipo\u00a0<em>booleano<\/em>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"s1\">'0'<\/span><span class=\"p\">)))<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">bool<\/span><span class=\"p\">(<\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"s1\">'1'<\/span><span class=\"p\">)))<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<hr class=\"docutils\" \/>\n<\/div>\n<\/div>\n<div id=\"funciones-de-cadenas-de-caracteres\" class=\"section\"><span id=\"python-fun-builtins-cadenas\"><\/span><\/p>\n<h2>Funciones de cadenas de caracteres<\/h2>\n<p>Las funciones de tipos\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0se describen a continuaci\u00f3n:<\/p>\n<div id=\"capitalize\" class=\"section\"><span id=\"python-fun-capitalize\"><\/span><\/p>\n<h3>capitalize()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">capitalize()<\/span><\/code>\u00a0devuelve una\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>\u00a0con MAY\u00daSCULA la primera palabra.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">capitalize<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'Leonardo caballero'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"chr\" class=\"section\"><span id=\"python-fun-chr\"><\/span><\/p>\n<h3>chr()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">chr()<\/span><\/code>\u00a0recibe como argumento un entero, y devuelve una cadena con el car\u00e1cter cuyo c\u00f3digo\u00a0<em>Unicode<\/em>\u00a0corresponde a ese valor. El rango v\u00e1lido para el argumento es de 0 a 256.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">chr<\/span><span class=\"p\">(<\/span><span class=\"mi\">64<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'@'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">chr<\/span><span class=\"p\">(<\/span><span class=\"mi\">36<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'$'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">chr<\/span><span class=\"p\">(<\/span><span class=\"mi\">94<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'^'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">chr<\/span><span class=\"p\">(<\/span><span class=\"mi\">126<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'~'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"endswith\" class=\"section\"><span id=\"python-fun-endswith\"><\/span><\/p>\n<h3>endswith()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">endswith()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la cadena termine con el criterio enviado por par\u00e1metros en la funci\u00f3n.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">endswith<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"do\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">endswith<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"ro\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"expandtabs\" class=\"section\"><span id=\"python-fun-expandtabs\"><\/span><\/p>\n<h3>expandtabs()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">expandtabs()<\/span><\/code>\u00a0devuelve una copia de la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0donde todos los caracteres\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tab<\/span><\/code>\u00a0(tabulaci\u00f3n) son remplazados por uno o m\u00e1s espacios, depende en la actual columna y el tama\u00f1o del tab dado.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'Leonardo Caballero<\/span><span class=\"se\">\\t<\/span><span class=\"s1\">Python Developer<\/span><span class=\"se\">\\t<\/span><span class=\"s1\">leonardoc@plone.org'<\/span><span class=\"o\">.<\/span><span class=\"n\">expandtabs<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'Leonardo Caballero      Python Developer        leonardoc@plone.org'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Usted puede indicar el tama\u00f1o de la tecla\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tab<\/span><\/code>\u00a0v\u00eda par\u00e1metro de la funci\u00f3n:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'Leonardo Caballero<\/span><span class=\"se\">\\t<\/span><span class=\"s1\">Python Developer<\/span><span class=\"se\">\\t<\/span><span class=\"s1\">leonardoc@plone.org'<\/span><span class=\"o\">.<\/span><span class=\"n\">expandtabs<\/span><span class=\"p\">(<\/span><span class=\"mi\">4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'Leonardo Caballero  Python Developer    leonardoc@plone.org'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'Leonardo Caballero<\/span><span class=\"se\">\\t<\/span><span class=\"s1\">Python Developer<\/span><span class=\"se\">\\t<\/span><span class=\"s1\">leonardoc@plone.org'<\/span><span class=\"o\">.<\/span><span class=\"n\">expandtabs<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'Leonardo Caballero  Python Developer  leonardoc@plone.org'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"find\" class=\"section\"><span id=\"python-fun-find\"><\/span><\/p>\n<h3>find()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">find()<\/span><\/code>\u00a0devuelve un valor num\u00e9rico\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">0<\/span><\/code>\u00a0si encuentra el criterio de b\u00fasqueda o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">-1<\/span><\/code>\u00a0si no coincide el criterio de b\u00fasqueda enviado por par\u00e1metros en la funci\u00f3n.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">find<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"leo\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">find<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"ana\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">-1<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"format\" class=\"section\"><span id=\"python-fun-format\"><\/span><\/p>\n<h3>format()<\/h3>\n<p>La funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0devuelve una representaci\u00f3n formateada de un valor dato controlado por el especificador de formato.<\/p>\n<p>La funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0es similar al\u00a0<span class=\"std std-ref\">m\u00e9todo format()<\/span>\u00a0disponible en el tipo de\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>. Internamente, ambos llaman al m\u00e9todo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__format__()<\/span><\/code>\u00a0de un objecto.<\/p>\n<p>Mientras, la funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0es una implementaci\u00f3n de bajo nivel para formatear un objeto usando\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__format__()<\/span><\/code>\u00a0internamente, el\u00a0<span class=\"std std-ref\">m\u00e9todo format()<\/span>\u00a0del tipo de cadena de caracteres es una implementaci\u00f3n de alto nivel disponible para ejecutar operaciones de formateo complejas en m\u00faltiples objeto de\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>.<\/p>\n<p>La sintaxis de la funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0es:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"n\">value<\/span><span class=\"p\">[,<\/span> <span class=\"n\">format_spec<\/span><span class=\"p\">])<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La a funci\u00f3n integrada\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0toma dos par\u00e1metros:<\/p>\n<ul class=\"simple\">\n<li>value &#8211; valor que necesita formatear.<\/li>\n<li>format_spec &#8211; La especificaci\u00f3n en como el valor debe ser formateado.<\/li>\n<\/ul>\n<p>A continuaci\u00f3n, un ejemplo de un valor\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>, seria de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"mi\">123<\/span><span class=\"p\">,<\/span><span class=\"s2\">\"d\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">123<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>A continuaci\u00f3n, un ejemplo de un valor\u00a0<span class=\"std std-ref\">n\u00famero float<\/span>, seria de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"mf\">123.456789<\/span><span class=\"p\">,<\/span><span class=\"s2\">\"f\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">123.456789<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>A continuaci\u00f3n, un ejemplo de un valor binario, seria de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"mi\">10<\/span><span class=\"p\">,<\/span><span class=\"s2\">\"b\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">1010<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>A continuaci\u00f3n, un ejemplo de un valor\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>\u00a0con formato especifico, seria de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"mi\">1234<\/span><span class=\"p\">,<\/span><span class=\"s2\">\"*&gt;+7,d\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">*+1,234<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior cuando se formatea el\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>\u00a0<em>1234<\/em>, usted especifico el especificador de formato\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">*&lt;+7,d<\/span><\/code>. Seguidamente, se describe cada opci\u00f3n a continuaci\u00f3n:<\/p>\n<ul class=\"simple\">\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">*<\/span><\/code>\u00a0Es la opci\u00f3n del car\u00e1cter de relleno, el cual rellena los espacio vac\u00edo despu\u00e9s del formato.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">&gt;<\/span><\/code>\u00a0Es la opci\u00f3n de alineaci\u00f3n a la derecha, el cual alinea la cadena de caracteres de salida a la derecha.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">+<\/span><\/code>\u00a0Es la opci\u00f3n de signo, el cual obliga al n\u00famero a ser firmado (con un signo a su izquierda).<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">7<\/span><\/code>\u00a0Es la opci\u00f3n ancho, el cual obliga el n\u00famero que tome un m\u00ednimo de ancho de 7, otros espacios ser\u00e1n rellenado por el car\u00e1cter de relleno.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">,<\/span><\/code>\u00a0Ese es el operador miles, el cual coloca un car\u00e1cter coma entre todos los n\u00fameros miles.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">d<\/span><\/code>\u00a0Es la opci\u00f3n tipo que especifica que el n\u00famero es un\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>.<\/li>\n<\/ul>\n<p>A continuaci\u00f3n, un ejemplo de un valor\u00a0<span class=\"std std-ref\">n\u00famero float<\/span>\u00a0con formato especifico, seria de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"mf\">123.4567<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"^-09.3f\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">0123.4570<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior cuando se formatea el\u00a0<span class=\"std std-ref\">n\u00famero float<\/span>\u00a0<em>123.4567<\/em>, usted especifico el especificador de formato\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">^-09.3f<\/span><\/code>. Seguidamente, se describe cada opci\u00f3n a continuaci\u00f3n:<\/p>\n<ul class=\"simple\">\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">^<\/span><\/code>\u00a0Es la opci\u00f3n de alineaci\u00f3n centrar, el cual alinea la cadena de caracteres de salida al centro del espacio restante.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">-<\/span><\/code>\u00a0Es la opci\u00f3n de signo el cual obliga solo a los n\u00fameros negativos a mostrar el signo.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">0<\/span><\/code>\u00a0Ese es el car\u00e1cter, el cual es colocado en lugar de los espacios vac\u00edos.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">9<\/span><\/code>\u00a0Es la opci\u00f3n de ancho, el cual establece el ancho m\u00ednimo del n\u00famero en 9 (incluido el punto decimal, la coma y el signo de miles).<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">.3<\/span><\/code>\u00a0Ese es el operador de precisi\u00f3n que define la precisi\u00f3n del n\u00famero flotante dado a 3 lugares.<\/li>\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">f<\/span><\/code>\u00a0Es la opci\u00f3n tipo que especifica que el n\u00famero es un\u00a0<span class=\"std std-ref\">n\u00famero float<\/span>.<\/li>\n<\/ul>\n<p>A continuaci\u00f3n, un ejemplo de usar la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0sobre escribiendo el m\u00e9todo especial\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__format__()<\/span><\/code>\u00a0de una\u00a0<span class=\"std std-ref\">clase<\/span>, seria de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">:<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"k\">def<\/span> <span class=\"fm\">__format__<\/span><span class=\"p\">(<\/span><span class=\"bp\">self<\/span><span class=\"p\">,<\/span> <span class=\"n\">formato<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"k\">if<\/span><span class=\"p\">(<\/span><span class=\"n\">formato<\/span> <span class=\"o\">==<\/span> <span class=\"s1\">'edad'<\/span><span class=\"p\">):<\/span>\r\n<span class=\"gp\">... <\/span>            <span class=\"k\">return<\/span> <span class=\"s1\">'23'<\/span>\r\n<span class=\"gp\">... <\/span>        <span class=\"k\">return<\/span> <span class=\"s1\">'Formato nulo'<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"nb\">format<\/span><span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">(),<\/span> <span class=\"s2\">\"edad\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">23<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior cuando se sobre escribe el m\u00e9todo especial\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">__format__()<\/span><\/code>\u00a0de la clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>. Ese ahora acepta el argumento del m\u00e9todo llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">edad<\/span><\/code>\u00a0el cual devuelve\u00a0<em>23<\/em>.<\/p>\n<p>El m\u00e9todo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">format()<\/span><\/code>\u00a0internamente ejecuta\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona().__format__(\"edad\")<\/span><\/code>, el cual devuelve el mensaje\u00a0<em>23<\/em>. Si no hay formato especificado, el mensaje devuelto es\u00a0<em>Formato nulo<\/em>.<\/p>\n<\/div>\n<div id=\"index\" class=\"section\"><span id=\"python-fun-index\"><\/span><\/p>\n<h3>index()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">index()<\/span><\/code>\u00a0es como la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">find()<\/span><\/code>\u00a0pero arroja una excepci\u00f3n\u00a0<span class=\"std std-ref\">ValueError<\/span>\u00a0cuando la sub-cadena no es encontrada.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">index<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"leo\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">index<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"ana\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">ValueError<\/span>: <span class=\"n\">substring not found<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">index<\/span><span class=\"p\">(<\/span><span class=\"s2\">\" ca\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">8<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"intern\" class=\"section\"><span id=\"python-fun-intern\"><\/span><\/p>\n<h3>intern()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">intern()<\/span><\/code>\u00a0introduce la cadena en la tabla de cadenas internadas (si no est\u00e1 ya all\u00ed). Esto ingresa la cadena en la tabla (global) de cadenas internas cuyo prop\u00f3sito es acelerar las b\u00fasquedas en el tipo diccionario.<\/p>\n<p>Al utilizar la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">intern()<\/span><\/code>, se asegura de que nunca cree dos objetos de cadena de caracteres que tengan el mismo valor: cuando solicita la creaci\u00f3n de un segundo objeto de cadena de caracteres con el mismo valor que un objeto de cadena existente, recibe una referencia al objeto de cadena preexistente. De esta manera, est\u00e1s ahorrando memoria. Adem\u00e1s, la comparaci\u00f3n de objetos de cadena de caracteres ahora es muy eficiente porque se lleva a cabo comparando las direcciones de memoria de los dos objetos de cadena de caracteres en lugar de su contenido.<\/p>\n<p>Esencialmente, la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">intern()<\/span><\/code>\u00a0busca (o almacena si no est\u00e1 presente) la cadena de caracteres en una colecci\u00f3n de cadenas de caracteres internadas, por lo que todas las instancias internadas compartir\u00e1n la misma identidad. Cambia el costo \u00fanico de buscar esta cadena de caracteres para realizar comparaciones m\u00e1s r\u00e1pidas (la comparaci\u00f3n puede devolver\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0despu\u00e9s de solo verificar la identidad, en lugar de tener que comparar cada car\u00e1cter), y reducir el uso de la memoria.<\/p>\n<p>Sin embargo, Python internar\u00e1 autom\u00e1ticamente cadenas de caracteres que sean peque\u00f1as o que parezcan identificadores, por lo que es posible que no obtengas ninguna mejora porque tus cadenas de caracteres ya est\u00e1n internadas entre bastidores.<\/p>\n<p>A continuaci\u00f3n uno ejemplo de comparaci\u00f3n de cadena de caracteres con operadores de relacionales:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span><span class=\"p\">,<\/span> <span class=\"n\">cadena1<\/span> <span class=\"o\">=<\/span> <span class=\"s1\">'python'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'python'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span> <span class=\"o\">==<\/span> <span class=\"n\">cadena1<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span> <span class=\"ow\">is<\/span> <span class=\"n\">cadena1<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span><span class=\"p\">,<\/span> <span class=\"n\">cadena1<\/span> <span class=\"o\">=<\/span> <span class=\"s1\">'python 2.7'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'python 2.7'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span> <span class=\"ow\">is<\/span> <span class=\"n\">cadena1<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>A continuaci\u00f3n uno ejemplo de comparaci\u00f3n de cadena de caracteres con el operador\u00a0<span class=\"std std-ref\">is<\/span>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span> <span class=\"o\">=<\/span> <span class=\"n\">intern<\/span><span class=\"p\">(<\/span><span class=\"s1\">'plone cms'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena1<\/span> <span class=\"o\">=<\/span> <span class=\"s1\">'plone cms'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span> <span class=\"ow\">is<\/span> <span class=\"n\">cadena1<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena1<\/span> <span class=\"o\">=<\/span> <span class=\"n\">intern<\/span><span class=\"p\">(<\/span><span class=\"s1\">'plone cms'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena0<\/span> <span class=\"ow\">is<\/span> <span class=\"n\">cadena1<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"isalnum\" class=\"section\"><span id=\"python-fun-isalnum\"><\/span><\/p>\n<h3>isalnum()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">isalnum()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la cadena contenga caracteres alfanum\u00e9ricos.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'23456987'<\/span><span class=\"o\">.<\/span><span class=\"n\">isalnum<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'V-23456987'<\/span><span class=\"o\">.<\/span><span class=\"n\">isalnum<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"isalpha\" class=\"section\"><span id=\"python-fun-isalpha\"><\/span><\/p>\n<h3>isalpha()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">isalpha()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la cadena contenga caracteres alfab\u00e9ticos.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo'<\/span><span class=\"o\">.<\/span><span class=\"n\">isalpha<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">isalpha<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"isdigit\" class=\"section\"><span id=\"python-fun-isdigit\"><\/span><\/p>\n<h3>isdigit()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">isdigit()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la cadena contenga caracteres d\u00edgitos.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">isdigit<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'23456987'<\/span><span class=\"o\">.<\/span><span class=\"n\">isdigit<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"islower\" class=\"section\"><span id=\"python-fun-islower\"><\/span><\/p>\n<h3>islower()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">islower()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la cadena contenga caracteres en MIN\u00daSCULAS.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">islower<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo CABALLERO'<\/span><span class=\"o\">.<\/span><span class=\"n\">islower<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"istitle\" class=\"section\"><span id=\"python-fun-istitle\"><\/span><\/p>\n<h3>istitle()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">istitle()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0sean capitales en cada palabra.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"leonardo caballero\"<\/span><span class=\"o\">.<\/span><span class=\"n\">title<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'Leonardo Caballero'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"leonardo Caballero\"<\/span><span class=\"o\">.<\/span><span class=\"n\">istitle<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"isspace\" class=\"section\"><span id=\"python-fun-isspace\"><\/span><\/p>\n<h3>isspace()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">isspace()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si no es vac\u00eda, y todos sus caracteres son espacios en blanco.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\" \"<\/span><span class=\"o\">.<\/span><span class=\"n\">isspace<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"  \"<\/span><span class=\"o\">.<\/span><span class=\"n\">isspace<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"a \"<\/span><span class=\"o\">.<\/span><span class=\"n\">isspace<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\" A \"<\/span><span class=\"o\">.<\/span><span class=\"n\">isspace<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"isupper\" class=\"section\"><span id=\"python-fun-isupper\"><\/span><\/p>\n<h3>isupper()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">isupper()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0est\u00e9n en MAY\u00daSCULAS en cada palabra.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'LEONARDO CABALLERO'<\/span><span class=\"o\">.<\/span><span class=\"n\">isupper<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'LEONARDO caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">isupper<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"lstrip\" class=\"section\"><span id=\"python-fun-lstrip\"><\/span><\/p>\n<h3>lstrip()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">lstrip()<\/span><\/code>\u00a0devuelve una copia de la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0con el espacio en blanco inicial eliminado. Si se dan la cadena de caracteres y no es\u00a0<span class=\"std std-ref\">None<\/span>, elimina los caracteres en la cadena de caracteres en su lugar. Si la cadena de caracteres son\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">unicode<\/span><\/code>, ser\u00e1n convertidas a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">unicode<\/span><\/code>\u00a0antes de eliminar.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\" leonardo caballero \"<\/span><span class=\"o\">.<\/span><span class=\"n\">lstrip<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'leonardo caballero '<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"lower\" class=\"section\"><span id=\"python-fun-lower\"><\/span><\/p>\n<h3>lower()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">lower()<\/span><\/code>\u00a0devuelve una\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>\u00a0con MIN\u00daSCULAS en cada palabra.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'LEONARDO CABALLERO'<\/span><span class=\"o\">.<\/span><span class=\"n\">lower<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'leonardo caballero'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"ord\" class=\"section\"><span id=\"python-fun-ord\"><\/span><\/p>\n<h3>ord()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">ord()<\/span><\/code>\u00a0es el inverso de\u00a0<span class=\"std std-ref\">chr()<\/span>\u00a0dada una cadena representando un car\u00e1cter Unicode, devuelve el entero del c\u00f3digo correspondiente.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">ord<\/span><span class=\"p\">(<\/span><span class=\"s1\">'@'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">64<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">ord<\/span><span class=\"p\">(<\/span><span class=\"s1\">'$'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">36<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">ord<\/span><span class=\"p\">(<\/span><span class=\"s1\">'^'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">94<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">ord<\/span><span class=\"p\">(<\/span><span class=\"s1\">'~'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">126<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"replace\" class=\"section\"><span id=\"python-fun-replace\"><\/span><\/p>\n<h3>replace()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">replace()<\/span><\/code>\u00a0si encuentra el criterio de la b\u00fasqueda de la sub-cadena o la remplaza con la nueva sub-cadena enviado por par\u00e1metros en la funci\u00f3n.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">replace<\/span><span class=\"p\">(<\/span><span class=\"s2\">\" cab\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\" Cab\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'leonardo Caballero'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"split\" class=\"section\"><span id=\"python-fun-split\"><\/span><\/p>\n<h3>split()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">split()<\/span><\/code>\u00a0devuelve una lista con la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0separada por cada indice de la lista.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">split<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">['leonardo', 'caballero']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"splitlines\" class=\"section\"><span id=\"python-fun-splitlines\"><\/span><\/p>\n<h3>splitlines()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">splitlines()<\/span><\/code>\u00a0devuelve una lista con la\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>\u00a0separada por cada salto de linea en cada indice de la lista.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo jose<\/span><span class=\"se\">\\n<\/span><span class=\"s1\">caballero garcia'<\/span><span class=\"o\">.<\/span><span class=\"n\">splitlines<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">['leonardo jose', 'caballero garcia']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"startswith\" class=\"section\"><span id=\"python-fun-startswith\"><\/span><\/p>\n<h3>startswith()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">startswith()<\/span><\/code>\u00a0devuelve un valor booleano\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0o\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0si coincide que la cadena inicie con el criterio enviado por par\u00e1metros en la funci\u00f3n.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">startswith<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"ca\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">startswith<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"leo\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"str\" class=\"section\"><span id=\"python-fun-str\"><\/span><\/p>\n<h3>str()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">str()<\/span><\/code>\u00a0es el constructor del tipo de\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>, se usa crear una\u00a0<em>car\u00e1cter<\/em>\u00a0o\u00a0<em>cadenas de caracteres<\/em>\u00a0mediante la misma funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">str()<\/span><\/code>.<\/p>\n<p>Puede convertir un\u00a0<span class=\"std std-ref\">n\u00famero entero<\/span>\u00a0a una\u00a0<em>cadena de caracteres<\/em>, de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"mi\">2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'2'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Puede convertir un\u00a0<span class=\"std std-ref\">n\u00famero float<\/span>\u00a0a una\u00a0<em>cadena de caracteres<\/em>, de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"mf\">2.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'2.5'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"o\">-<\/span><span class=\"mf\">2.5<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'-2.5'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Puede convertir un\u00a0<span class=\"std std-ref\">n\u00famero complex<\/span>\u00a0a una\u00a0<em>cadena de caracteres<\/em>, de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"mf\">2.3<\/span><span class=\"o\">+<\/span><span class=\"mi\">0<\/span><span class=\"n\">j<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'(2.3+0j)'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Puede convertir un tipo\u00a0<span class=\"std std-ref\">booleano<\/span>\u00a0a una\u00a0<em>cadena de caracteres<\/em>, de la siguiente forma:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'True'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"kc\">False<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'False'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"swapcase\" class=\"section\"><span id=\"python-fun-swapcase\"><\/span><\/p>\n<h3>swapcase()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">swapcase()<\/span><\/code>\u00a0devuelve una\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>\u00a0convertida al opuesto sea MAY\u00daSCULAS o MIN\u00daSCULAS.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'leonardo caballero'<\/span><span class=\"o\">.<\/span><span class=\"n\">swapcase<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'LEONARDO CABALLERO'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s1\">'LEONARDO CABALLERO'<\/span><span class=\"o\">.<\/span><span class=\"n\">swapcase<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'leonardo caballero'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"title\" class=\"section\"><span id=\"python-fun-title\"><\/span><\/p>\n<h3>title()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">title()<\/span><\/code>\u00a0devuelve una\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>\u00a0con capitales en cada palabra.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"leonardo caballero\"<\/span><span class=\"o\">.<\/span><span class=\"n\">title<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'Leonardo Caballero'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"unichr\" class=\"section\"><span id=\"python-fun-unichr\"><\/span><\/p>\n<h3>unichr()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">unichr()<\/span><\/code>\u00a0devuelve una\u00a0<em>cadena de caracteres<\/em>\u00a0<em>Unicode<\/em>\u00a0de un car\u00e1cter con un numero entero.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">unichr<\/span><span class=\"p\">(<\/span><span class=\"mi\">64<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">u'@'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">unichr<\/span><span class=\"p\">(<\/span><span class=\"mi\">36<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">u'$'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">unichr<\/span><span class=\"p\">(<\/span><span class=\"mi\">94<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">u'^'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">unichr<\/span><span class=\"p\">(<\/span><span class=\"mi\">126<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">u'~'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"upper\" class=\"section\"><span id=\"python-fun-upper\"><\/span><\/p>\n<h3>upper()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">upper()<\/span><\/code>\u00a0devuelve una\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>\u00a0con MAY\u00daSCULAS en cada palabra.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"leonardo caballero\"<\/span><span class=\"o\">.<\/span><span class=\"n\">upper<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'LEONARDO CABALLERO'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<hr class=\"docutils\" \/>\n<\/div>\n<\/div>\n<div id=\"funciones-de-secuencias\" class=\"section\"><span id=\"python-fun-builtins-secuencias\"><\/span><\/p>\n<h2>Funciones de secuencias<\/h2>\n<p>Las funciones de secuencias se describen a continuaci\u00f3n:<\/p>\n<div id=\"all\" class=\"section\"><span id=\"python-fun-all\"><\/span><\/p>\n<h3>all()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">all()<\/span><\/code>\u00a0toma un contenedor como un argumento. Esta devuelve las funciones integradas\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0si todo los valores en el objeto iterable python tienen un valor de tipo\u00a0<span class=\"std std-ref\">booleano<\/span>\u00a0igual a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>. Un valor vac\u00edo tiene un tipo\u00a0<span class=\"std std-ref\">booleano<\/span>\u00a0igual a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">all<\/span><span class=\"p\">([<\/span><span class=\"s1\">' '<\/span><span class=\"p\">,<\/span><span class=\"s1\">' '<\/span><span class=\"p\">,<\/span><span class=\"s1\">' '<\/span><span class=\"p\">])<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">all<\/span><span class=\"p\">({<\/span><span class=\"s1\">'*'<\/span><span class=\"p\">,<\/span><span class=\"s1\">''<\/span><span class=\"p\">,<\/span><span class=\"s1\">''<\/span><span class=\"p\">})<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"any\" class=\"section\"><span id=\"python-fun-any\"><\/span><\/p>\n<h3>any()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">any()<\/span><\/code>\u00a0ese toma un argumento y devuelve\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0incluso si, un valor en el objeto iterable tiene un valor de tipo\u00a0<span class=\"std std-ref\">booleano<\/span>\u00a0igual a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">any<\/span><span class=\"p\">((<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span><span class=\"mi\">0<\/span><span class=\"p\">,<\/span><span class=\"mi\">0<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">any<\/span><span class=\"p\">((<\/span><span class=\"mi\">0<\/span><span class=\"p\">,<\/span><span class=\"mi\">0<\/span><span class=\"p\">,<\/span><span class=\"mi\">0<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">any<\/span><span class=\"p\">(<\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">5<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">any<\/span><span class=\"p\">(<\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">0<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"coerce\" class=\"section\"><span id=\"python-fun-coerce\"><\/span><\/p>\n<h3>coerce()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">coerce()<\/span><\/code>\u00a0devuelve una tupla que consta de los dos argumentos num\u00e9ricos convertidos en un tipo com\u00fan, utilizando las mismas reglas que las operaciones aritm\u00e9ticas. Si la coerci\u00f3n no es posible, levante una excepci\u00f3n\u00a0<span class=\"std std-ref\">TypeError<\/span>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">coerce<\/span><span class=\"p\">(<\/span><span class=\"mi\">3<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(3, 4)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">coerce<\/span><span class=\"p\">(<\/span><span class=\"mi\">3<\/span><span class=\"p\">,<\/span> <span class=\"mf\">4.2<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">(3.0, 4.2)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"dict\" class=\"section\"><span id=\"python-fun-dict\"><\/span><\/p>\n<h3>dict()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">dict()<\/span><\/code>\u00a0es el constructor del tipo de\u00a0<span class=\"std std-ref\">diccionario<\/span>, esta funci\u00f3n se usa crear un diccionario:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dict<\/span><span class=\"p\">(<\/span><span class=\"n\">python<\/span><span class=\"o\">=<\/span><span class=\"mf\">2.7<\/span><span class=\"p\">,<\/span> <span class=\"n\">zope<\/span><span class=\"o\">=<\/span><span class=\"mf\">2.13<\/span><span class=\"p\">,<\/span> <span class=\"n\">plone<\/span><span class=\"o\">=<\/span><span class=\"mf\">5.1<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">{'zope': 2.13, 'python': 2.7, 'plone': 5.1}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Tambi\u00e9n puede crear un diccionario indicando a las claves usando comillas simples:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"p\">{<\/span><span class=\"s1\">'python'<\/span><span class=\"p\">:<\/span> <span class=\"mf\">2.7<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'zope'<\/span><span class=\"p\">:<\/span> <span class=\"mf\">2.13<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'plone'<\/span><span class=\"p\">:<\/span> <span class=\"mf\">5.1<\/span><span class=\"p\">}<\/span>\r\n<span class=\"go\">{'python': 2.7, 'zope': 2, 'plone': 5.1}<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dict<\/span><span class=\"p\">({<\/span><span class=\"s1\">'python'<\/span><span class=\"p\">:<\/span> <span class=\"mf\">2.7<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'zope'<\/span><span class=\"p\">:<\/span> <span class=\"mf\">2.13<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'plone'<\/span><span class=\"p\">:<\/span> <span class=\"mf\">5.1<\/span><span class=\"p\">})<\/span>\r\n<span class=\"go\">{{'python': 2.7, 'zope': 2.13, 'plone': 5.1}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Convertir desde un grupo de dos\u00a0<span class=\"std std-ref\">listas<\/span>\u00a0de forma recursiva usando la funci\u00f3n\u00a0<span class=\"std std-ref\">zip()<\/span>\u00a0a tipo\u00a0<em>diccionario<\/em>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dict<\/span><span class=\"p\">(<\/span><span class=\"nb\">zip<\/span><span class=\"p\">([<\/span><span class=\"s1\">'python'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'zope'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'plone'<\/span><span class=\"p\">],<\/span> <span class=\"p\">[<\/span><span class=\"mf\">2.7<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.13<\/span><span class=\"p\">,<\/span> <span class=\"mf\">5.1<\/span><span class=\"p\">]))<\/span>\r\n<span class=\"go\">{'python': 2.7, 'zope': 2.13, 'plone': 5.1}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Convertir desde un grupo de\u00a0<span class=\"std std-ref\">tuplas<\/span>\u00a0respectivamente en una\u00a0<span class=\"std std-ref\">lista<\/span>\u00a0a tipo\u00a0<em>diccionario<\/em>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">dict<\/span><span class=\"p\">([(<\/span><span class=\"s1\">'zope'<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.13<\/span><span class=\"p\">),<\/span> <span class=\"p\">(<\/span><span class=\"s1\">'python'<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.7<\/span><span class=\"p\">),<\/span> <span class=\"p\">(<\/span><span class=\"s1\">'plone'<\/span><span class=\"p\">,<\/span> <span class=\"mf\">5.1<\/span><span class=\"p\">)])<\/span>\r\n<span class=\"go\">{'plone': 5.1, 'zope': 2.13, 'python': 2.7}<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"frozenset\" class=\"section\"><span id=\"python-fun-frozenset\"><\/span><\/p>\n<h3>frozenset()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">frozenset()<\/span><\/code>\u00a0es el constructor del tipo de\u00a0<span class=\"std std-ref\">conjuntos<\/span>, se usa crear un conjunto\u00a0<em>inmutable<\/em>\u00a0mediante la misma funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">frozenset()<\/span><\/code>\u00a0de un objeto iterable\u00a0<span class=\"std std-ref\">li<\/span><span class=\"std std-ref\">s<\/span><span class=\"std std-ref\">ta<\/span>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">versiones<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"mi\">6<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.1<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.5<\/span><span class=\"p\">,<\/span> <span class=\"mf\">3.6<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">,<\/span> <span class=\"mi\">5<\/span><span class=\"p\">,<\/span> <span class=\"mi\">6<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.5<\/span><span class=\"p\">]<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">versiones<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">versiones<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">[6, 2.1, 2.5, 3.6, 4, 5, 6, 4, 2.5] &lt;type 'list'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">versiones_plone<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">frozenset<\/span><span class=\"p\">(<\/span><span class=\"n\">versiones<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">versiones_plone<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">versiones_plone<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">frozenset([2.5, 4, 5, 6, 2.1, 3.6]) &lt;type 'frozenset'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"iter\" class=\"section\"><span id=\"python-fun-iter\"><\/span><\/p>\n<h3>iter()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">iter()<\/span><\/code>\u00a0obtiene un\u00a0<span class=\"std std-ref\">iterador<\/span>\u00a0de un objeto. En la primera forma, el argumento debe proporcionar su propio\u00a0<em>iterador<\/em>, o ser una secuencia.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">iter<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"Plone\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span>\r\n<span class=\"go\">&lt;iterator object at 0x7eff6ce10250&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span><span class=\"o\">.<\/span><span class=\"n\">next<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'P'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span><span class=\"o\">.<\/span><span class=\"n\">next<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'l'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span><span class=\"o\">.<\/span><span class=\"n\">next<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'o'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span><span class=\"o\">.<\/span><span class=\"n\">next<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'n'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span><span class=\"o\">.<\/span><span class=\"n\">next<\/span><span class=\"p\">()<\/span>\r\n<span class=\"go\">'e'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span><span class=\"o\">.<\/span><span class=\"n\">next<\/span><span class=\"p\">()<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">StopIteration<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior, cuando se itera en la secuencia de tipo\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>, al llegar al final mediante el iterador llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">elemento<\/span><\/code>\u00a0se llama a la excepci\u00f3n\u00a0<span class=\"std std-ref\">StopIteration<\/span>\u00a0y se causa el detener la iteraci\u00f3n.<\/p>\n<\/div>\n<div id=\"list\" class=\"section\"><span id=\"python-fun-list\"><\/span><\/p>\n<h3>list()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">list()<\/span><\/code>\u00a0es el constructor del tipo de\u00a0<span class=\"std std-ref\">lista<\/span>, se usa crear una lista mediante la misma funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">list()<\/span><\/code>\u00a0de un iterable. Por ejemplo, una lista podr\u00eda crearse mediante la funci\u00f3n\u00a0<span class=\"std std-ref\">range(10)<\/span>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">lista<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">list<\/span><span class=\"p\">(<\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">10<\/span><span class=\"p\">))<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">lista<\/span>\r\n<span class=\"go\">[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"next\" class=\"section\"><span id=\"python-fun-next\"><\/span><\/p>\n<h3>next()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">next()<\/span><\/code>\u00a0devuelve el pr\u00f3ximo elemento desde un\u00a0<span class=\"std std-ref\">iterador<\/span>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">elemento<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">iter<\/span><span class=\"p\">([<\/span><span class=\"mi\">1<\/span><span class=\"p\">,<\/span><span class=\"mi\">2<\/span><span class=\"p\">,<\/span><span class=\"mi\">3<\/span><span class=\"p\">,<\/span><span class=\"mi\">4<\/span><span class=\"p\">,<\/span><span class=\"mi\">5<\/span><span class=\"p\">])<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">next<\/span><span class=\"p\">(<\/span><span class=\"n\">elemento<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">1<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">next<\/span><span class=\"p\">(<\/span><span class=\"n\">elemento<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">2<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">next<\/span><span class=\"p\">(<\/span><span class=\"n\">elemento<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">3<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">next<\/span><span class=\"p\">(<\/span><span class=\"n\">elemento<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">4<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">next<\/span><span class=\"p\">(<\/span><span class=\"n\">elemento<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">5<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">next<\/span><span class=\"p\">(<\/span><span class=\"n\">elemento<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">StopIteration<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior, cuando se itera en la secuencia de tipo\u00a0<span class=\"std std-ref\">lista<\/span>, al llegar al final mediante el iterador llamado\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">elemento<\/span><\/code>\u00a0se llama a la excepci\u00f3n\u00a0<span class=\"std std-ref\">StopIteration<\/span>\u00a0y se causa el detener la iteraci\u00f3n.<\/p>\n<\/div>\n<div id=\"tuple\" class=\"section\"><span id=\"python-fun-tuple\"><\/span><\/p>\n<h3>tuple()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tuple()<\/span><\/code>\u00a0es el constructor del tipo de\u00a0<span class=\"std std-ref\">tuplas<\/span>, se usa crear una tupla mediante la misma funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">tuple()<\/span><\/code>\u00a0de un iterable. Por ejemplo, una tupla podr\u00eda crearse mediante la funci\u00f3n\u00a0<span class=\"std std-ref\">range(10)<\/span>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">tupla<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">tuple<\/span><span class=\"p\">(<\/span><span class=\"nb\">range<\/span><span class=\"p\">(<\/span><span class=\"mi\">4<\/span><span class=\"p\">,<\/span> <span class=\"mi\">9<\/span><span class=\"p\">))<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">tupla<\/span>\r\n<span class=\"go\">(4, 5, 6, 7, 8)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"set\" class=\"section\"><span id=\"python-fun-set\"><\/span><\/p>\n<h3>set()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">set()<\/span><\/code>\u00a0es el constructor del tipo de\u00a0<span class=\"std std-ref\">conjuntos<\/span>, se usa crear un conjunto\u00a0<em>mutable<\/em>\u00a0mediante la misma funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">set()<\/span><\/code>\u00a0de un objeto iterable\u00a0<span class=\"std std-ref\">lista<\/span>:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">versiones<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"mf\">2.1<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.5<\/span><span class=\"p\">,<\/span> <span class=\"mf\">3.6<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">,<\/span> <span class=\"mi\">5<\/span><span class=\"p\">,<\/span> <span class=\"mi\">6<\/span><span class=\"p\">,<\/span> <span class=\"mi\">4<\/span><span class=\"p\">]<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">versiones<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">versiones<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">[2.1, 2.5, 3.6, 4, 5, 6, 4] &lt;type 'list'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">versiones_plone<\/span> <span class=\"o\">=<\/span> <span class=\"nb\">set<\/span><span class=\"p\">(<\/span><span class=\"n\">versiones<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">print<\/span> <span class=\"n\">versiones_plone<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">versiones_plone<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">set([2.5, 4, 5, 6, 2.1, 3.6]) &lt;type 'set'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"sorted\" class=\"section\"><span id=\"python-fun-sorted\"><\/span><\/p>\n<h3>sorted()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">sorted()<\/span><\/code>\u00a0devuelve una lista ordenada de los elementos del tipo secuencia que recibe como argumento (lista o cadena de caracteres). La secuencia original no es modificada.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">lista<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span><span class=\"mi\">23<\/span><span class=\"p\">,<\/span> <span class=\"mi\">13<\/span><span class=\"p\">,<\/span> <span class=\"mi\">7<\/span><span class=\"p\">,<\/span> <span class=\"mi\">37<\/span><span class=\"p\">]<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">sorted<\/span><span class=\"p\">(<\/span><span class=\"n\">lista<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">[7, 13, 23, 37]<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">sorted()<\/span><\/code>\u00a0siempre devuelve una lista, aunque reciba como argumento una\u00a0<span class=\"std std-ref\">cadena de caracteres<\/span>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">cadena<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"asdlk\"<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">sorted<\/span><span class=\"p\">(<\/span><span class=\"n\">cadena<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">['a', 'd', 'k', 'l', 's']<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"zip\" class=\"section\"><span id=\"python-fun-zip\"><\/span><\/p>\n<h3>zip()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">zip()<\/span><\/code>\u00a0devuelve una lista de\u00a0<span class=\"std std-ref\">tuplas<\/span>, donde cada tupla contiene el elemento i-th desde cada una de los tipos de secuencias de argumento. La lista devuelta es truncada en longitud a la longitud de la secuencia de argumentos m\u00e1s corta.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">zip<\/span><span class=\"p\">([<\/span><span class=\"s1\">'python'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'zope'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'plone'<\/span><span class=\"p\">],<\/span> <span class=\"p\">[<\/span><span class=\"mf\">2.7<\/span><span class=\"p\">,<\/span> <span class=\"mf\">2.13<\/span><span class=\"p\">,<\/span> <span class=\"mf\">5.1<\/span><span class=\"p\">])<\/span>\r\n<span class=\"go\">[('python', 2.7), ('zope', 2.13), ('plone', 5.1)]<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<hr class=\"docutils\" \/>\n<\/div>\n<\/div>\n<div id=\"funciones-de-objetos\" class=\"section\"><span id=\"python-fun-objetos\"><\/span><\/p>\n<h2>Funciones de objetos<\/h2>\n<p>Las funciones de objetos se describen a continuaci\u00f3n:<\/p>\n<div id=\"delattr\" class=\"section\"><span id=\"python-fun-delattr\"><\/span><\/p>\n<h3>delattr()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">delattr()<\/span><\/code>\u00a0elimina un atributo con nombre en un objeto;\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">delattr(x,<\/span>\u00a0<span class=\"pre\">'y')<\/span><\/code>\u00a0es equivalente a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">del<\/span>\u00a0<span class=\"pre\">x.y<\/span><\/code>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">:<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"sd\">\"\"\"Clase que representa una Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">cedula<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"V-13458796\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">nombre<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Leonardo\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">apellido<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Caballero\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">sexo<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"M\"<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">()<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span><span class=\"o\">.<\/span><span class=\"n\">sexo<\/span>\r\n<span class=\"go\">'M'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">delattr<\/span><span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">,<\/span><span class=\"s1\">'sexo'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span><span class=\"o\">.<\/span><span class=\"n\">sexo<\/span>\r\n<span class=\"gt\">Traceback (most recent call last):<\/span>\r\n  File <span class=\"nb\">\"&lt;stdin&gt;\"<\/span>, line <span class=\"m\">1<\/span>, in <span class=\"n\">&lt;module&gt;<\/span>\r\n<span class=\"gr\">AttributeError<\/span>: <span class=\"n\">Persona instance has no attribute 'sexo'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"getattr\" class=\"section\"><span id=\"python-fun-getattr\"><\/span><\/p>\n<h3>getattr()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">getattr()<\/span><\/code>\u00a0obtiene un atributo nombrado desde un objeto; de la siguiente forma\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">getattr(instancia,<\/span>\u00a0<span class=\"pre\">'atributo')<\/span><\/code>\u00a0el cual es equivalente a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">instancia.atributo<\/span><\/code>. Cuando un argumento predeterminado es dato, es es devuelto cuando el atributo no existe; sin eso, una excepci\u00f3n es lanzada en ese caso.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">:<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"sd\">\"\"\"Clase que representa una Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">cedula<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"V-13458796\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">nombre<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Leonardo\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">apellido<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Caballero\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">sexo<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"M\"<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">()<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">getattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span><span class=\"s1\">'sexo'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'M'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span><span class=\"o\">.<\/span><span class=\"n\">sexo<\/span>\r\n<span class=\"go\">'M'<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"hasattr\" class=\"section\"><span id=\"python-fun-hasattr\"><\/span><\/p>\n<h3>hasattr()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">hasattr()<\/span><\/code>\u00a0devuelve un tipo booleano cuando el objeto tiene un atributo con el nombre dado. (Esta hecho llamando a la funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">getattr(instancia,<\/span>\u00a0<span class=\"pre\">atributo)<\/span><\/code>\u00a0y capturar excepciones.)<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">:<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"sd\">\"\"\"Clase que representa una Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">cedula<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"V-13458796\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">nombre<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Leonardo\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">apellido<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Caballero\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">sexo<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"M\"<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">()<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hasattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'nombre'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hasattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'apellido'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hasattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'cedula'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hasattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'sexo'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hasattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'email'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"hash\" class=\"section\"><span id=\"python-fun-hash\"><\/span><\/p>\n<h3>hash()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">hash()<\/span><\/code>\u00a0devuelve un valor hash de tipo entero para el objeto.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">:<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"sd\">\"\"\"Clase que representa una Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">cedula<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"V-13458796\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">nombre<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Leonardo\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">apellido<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Caballero\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">sexo<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"M\"<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">macagua<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Persona<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'classobj'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Dos objetos con el mismo valor tienen el mismo valor hash.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'classobj'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'classobj'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hash<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">8742669316448<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">hash<\/span><span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">8742669316448<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Lo contrario no es necesariamente cierto, pero es probable.<\/p>\n<\/div>\n<div id=\"isinstance\" class=\"section\"><span id=\"python-fun-isinstance\"><\/span><\/p>\n<h3>isinstance()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">isinstance()<\/span><\/code>\u00a0le permite corroborar si un objeto es una\u00a0<span class=\"std std-ref\">instancia<\/span>\u00a0de una clase.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"nb\">isinstance<\/span><span class=\"p\">(<\/span><span class=\"n\">objeto<\/span><span class=\"p\">,<\/span> <span class=\"n\">tipo<\/span><span class=\"p\">)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Esta funci\u00f3n devuelve\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0si el objeto especificado es del tipo especificado, de lo contrario\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>.<\/p>\n<p>Los par\u00e1metros son:<\/p>\n<ul class=\"simple\">\n<li><em>objeto<\/em>, es requerido. Un objeto.<\/li>\n<li><em>tipo<\/em>, un tipo o una clase, o una tupla de tipos y\/o clases<\/li>\n<\/ul>\n<p>Un ejemplo de uso con la clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>\u00a0seria como lo siguiente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">persona1<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"V-13458796\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Leonardo\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Caballero\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"M\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">isinstance<\/span><span class=\"p\">(<\/span><span class=\"n\">persona1<\/span><span class=\"p\">,<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Si el tipo de par\u00e1metro es una tupla, esta funci\u00f3n devuelve\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0si le objeto es uno de los tipos en la tupla.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">persona1<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"V-13458796\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Leonardo\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Caballero\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"M\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">isinstance<\/span><span class=\"p\">(<\/span><span class=\"n\">persona1<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">,<\/span> <span class=\"nb\">int<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Aqu\u00ed puede decir que\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">persona1<\/span><\/code>\u00a0es una instancia de la clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>.<\/p>\n<p>Las clases dan la posibilidad de crear estructuras de datos m\u00e1s complejas. En el ejemplo, una clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>\u00a0que realizar\u00e1 un seguimiento del\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">cedula<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">nombre<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">apellido<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">sexo<\/span><\/code>\u00a0(que pasar\u00e1 como atributos).<\/p>\n<\/div>\n<div id=\"issubclass\" class=\"section\"><span id=\"python-fun-issubclass\"><\/span><\/p>\n<h3>issubclass()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">issubclass()<\/span><\/code>\u00a0le permite corroborar si un objeto es instancia de una clase.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"nb\">issubclass<\/span><span class=\"p\">(<\/span><span class=\"n\">subclase<\/span><span class=\"p\">,<\/span> <span class=\"n\">clase<\/span><span class=\"p\">)<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Esta funci\u00f3n devuelve\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0si la clase especificada es una subclase de la clase base, de lo contrario\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>.<\/p>\n<p>Un ejemplo de uso con la subclase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Supervisor<\/span><\/code>\u00a0que deriva de la clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>\u00a0seria como lo siguiente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">sV1<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Supervisor<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"V-16987456\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Jen\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Paz\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"D\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Chivo\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">issubclass<\/span><span class=\"p\">(<\/span><span class=\"n\">sV1<\/span><span class=\"p\">,<\/span> <span class=\"n\">Persona<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Si el tipo de par\u00e1metro es una tupla, esta funci\u00f3n devuelve\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0si le objeto es uno de los tipos en la tupla.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"n\">sV1<\/span> <span class=\"o\">=<\/span> <span class=\"n\">Supervisor<\/span><span class=\"p\">(<\/span><span class=\"s2\">\"V-16987456\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Jen\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Paz\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"D\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"Chivo\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">issubclass<\/span><span class=\"p\">(<\/span><span class=\"n\">sV1<\/span><span class=\"p\">,<\/span> <span class=\"p\">(<\/span><span class=\"n\">Persona<\/span><span class=\"p\">,<\/span> <span class=\"n\">Empleado<\/span><span class=\"p\">,<\/span> <span class=\"n\">Supervisor<\/span><span class=\"p\">,<\/span> <span class=\"n\">Destreza<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">True<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Aqu\u00ed puede decir que\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">sV1<\/span><\/code>\u00a0es una subclase derivada de la clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>.<\/p>\n<p>Las clases dan la posibilidad de crear estructuras de datos m\u00e1s complejas. En el ejemplo, una clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">Persona<\/span><\/code>\u00a0que realizar\u00e1 un seguimiento del\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">cedula<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">nombre<\/span><\/code>,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">apellido<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">sexo<\/span><\/code>\u00a0(que pasar\u00e1 como atributos).<\/p>\n<\/div>\n<div id=\"setattr\" class=\"section\"><span id=\"python-fun-setattr\"><\/span><\/p>\n<h3>setattr()<\/h3>\n<p>La funci\u00f3n\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">setattr()<\/span><\/code>\u00a0establecer un atributo con nombre en un objeto;\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">setattr(x,<\/span>\u00a0<span class=\"pre\">'y',<\/span>\u00a0<span class=\"pre\">v)<\/span><\/code>\u00a0es equivalente a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">x.y<\/span>\u00a0<span class=\"pre\">=<\/span>\u00a0<span class=\"pre\">v<\/span><\/code>.<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"k\">class<\/span> <span class=\"nc\">Persona<\/span><span class=\"p\">:<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"sd\">\"\"\"Clase que representa una Persona\"\"\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">cedula<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"V-13458796\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">nombre<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Leonardo\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">apellido<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"Caballero\"<\/span>\r\n<span class=\"gp\">... <\/span>    <span class=\"n\">sexo<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">\"M\"<\/span>\r\n<span class=\"gp\">...<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">setattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'email'<\/span><span class=\"p\">,<\/span> <span class=\"s1\">'leonardoc@plone.org'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">getattr<\/span><span class=\"p\">(<\/span><span class=\"n\">macagua<\/span><span class=\"p\">,<\/span><span class=\"s1\">'email'<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'leonardoc@plone.org'<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Funciones integradas El interprete Python tiene un n\u00famero de funciones integradas (built-in) dentro del m\u00f3dulo\u00a0__builtins__, las cuales est\u00e1n siempre disponibles. Estas funciones est\u00e1n listadas en orden alfab\u00e9ticos a continuaci\u00f3n: Funciones generales Las funciones de uso general se describen a continuaci\u00f3n: apply() La funci\u00f3n\u00a0apply()\u00a0devuelve el resultado de una funci\u00f3n o objeto clase llamado con argumentos soportados. [&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-379","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\/379","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=379"}],"version-history":[{"count":1,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/379\/revisions"}],"predecessor-version":[{"id":380,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/379\/revisions\/380"}],"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=379"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/categories?post=379"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/tags?post=379"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}